2025年4月2日 星期三 乙巳(蛇)年 正月初三 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 服务器 > 网络服务

如何将 HTTP 链接自动跳转到 HTTPS

时间:12-14来源:作者:点击数:15

全站开启安全的 SSL 链接,那以前的非安全链接如何处理,一个好的方案是做 301 跳转,如果一条一条链接的跳转,人都要疯的,不过我们可以在服务器配置,全站 301 跳转到安全链接。

Apache 版本

如果需要整站跳转,则在网站的配置文件的 <Directory> 标签内,键入以下内容:

  • RewriteEngine on
  • RewriteCond %{SERVER_PORT} !^443$
  • RewriteRule ^(.*)?$ https://%{SERVER_NAME}/$1 [L,R]

如果对某个目录做 https 强制跳转,则复制以下代码:

  • RewriteEngine on
  • RewriteBase /yourfolder
  • RewriteCond %{SERVER_PORT} !^443$
  • #RewriteRule ^(.*)?$ https://%{SERVER_NAME}/$1 [L,R]
  • RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

如果只需要对某个网页进行 https 跳转,可以使用 redirect 301 来做跳转!

Nginx 版本

在配置 80 端口的文件里面,写入以下内容即可。

  • server {
  •     listen       80;
  •     server_name  localhost;
  •     rewrite ^(.*)$ https://$host$1 permanent;   
  •     location / {
  •         root   html;
  •         index  index.html index.htm;
  •     }
  • }

Tomcat 和 IIS 参考单页面跳转。

JavaScript 版本

单独页面通用代码段:以下方法较适合指定某一个子页单独 https,在需要强制为 https 的页面上加入以下代码进行处理 http 跳转 https。

  • <script>
  • var url = window.location.href;
  • if (url.indexOf("https") < 0) {
  •     url = url.replace("http:", "https:");
  •     window.location.replace(url);
  • }
  • </script>

在需要强制为 http 的页面上加入以下代码进行处理 https 跳转 http

  • <script>
  • function redirect(){  
  •     var loc = location.href.split(':');
  •     if(loc[0] == 'https'){
  •         location.href = 'http:'+loc[1];  
  •     }
  • }                     
  • onload = redirect  
  • </script>

PHP 版本

PHP 页面跳转,添加在网站 php 页面内

  • if ($_SERVER["HTTPS"] <> "on"){
  •     $xredir="https://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
  •     header("Location: ".$xredir);
  • }

http 跳转 https 的方法较多,以上仅供参考。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐