admin 发表于 2016-7-11 01:15:14

http到https跳转教程集合

今天看到个博文还不错。就复制下来了。
1.nginx的方法,nginx的rewrite方法server {  
    listen  192.168.1.111:80;  
    server_name zhujitou.com;  
      
    rewrite ^(.*)$  https://$host$1 permanent;  
}  2.nginx的497状态码497 - normal request was sent to HTTPS  
解释:当此虚拟站点只允许https访问时,当用http访问时nginx会报出497错误码

思路利用error_page命令将497状态码的链接重定向到https://test.com这个域名上server {  
    listen       192.168.1.11:443;  #ssl端口  
    listen       192.168.1.11:80;   #用户习惯用http访问,加上80,后面通过497状态码让它自动跳到443端口  
    server_name  test.com;  
    #为一个server{......}开启ssl支持  
    ssl                  on;  
    #指定PEM格式的证书文件   
    ssl_certificate      /etc/nginx/test.pem;   
    #指定PEM格式的私钥文件  
    ssl_certificate_key  /etc/nginx/test.key;  
      
    #让http请求重定向到https请求   
    error_page 497  https://$host$uri?$args;  
}  上述两种方法均会耗费服务器的资源,

1.1.首先建立一个index.html<html>
<meta http-equiv="refresh" content="0;url=https://www.zhujitou.com/">
</html>2.若网站目录为 /home/wwwroot/zhujitou.com 在网站目录下新建 meta目录 将index.html放进去

有2种代码。server {  
    listen 192.168.1.11:80;  
    server_name test.com;  
      
    location / {  
                #index.html放在虚拟主机监听的根目录下  
        root /srv/www/http.test.com/;  
    }  
        #将404的页面重定向到https的首页  
    error_page  404 https://test.com/;  
} 方法2:<blockquote>server改掉zhujitou.com即可,伪静态 修改 wordpress.conf

友情提示:以上配置文件需要根据具体情况 请酌情修改!

如果主机不支持https 或者 不支持 http2 请看:

如何让你的网站升级到HTTP/2 lnmp版

此方法占用服务器资源少,问题在于 访问 http://xxx.com/sss 时 会被直接跳转到 https://xxx.com

页: [1]
查看完整版本: http到https跳转教程集合