http自动跳转https的解决办法

    选择打赏方式

我的环境是lnmp(Linux + Nginx+ MySQL+ PHP)

我们需要更改Nginx的配置文件

打开 /usr/local/nginx/conf/vhost/XX..conf

上面的XX是说你的域名,打开后如下

如果你弄https的话,我想你这边都肯定弄好443,证书那些东西了,然后我们可以把之前的那个80删除,然后在上面在新建一个,比如以下


server {
listen 80;
server_name www.freefan.cc;  #这里修改为你的域名,然后复制到你的配置文件就可以了
rewrite ^(.*) https://$server_name$1 permanent;
}
下面的这些东西不需要管
server {
  listen 443;
        ssl on;
        ssl_certificate 1_www.freefan.cc_bundle.crt;
        ssl_certificate_key 2_www.freefan.cc.key;
        ssl_session_timeout 5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
        ssl_prefer_server_ciphers on;
  server_name www.freefan.cc freefan.cc;
  access_log off;
  index index.html index.htm index.php;
  include /usr/local/nginx/conf/rewrite/other.conf;
if ( $http_host !~ "^www\.freefan\.cc$" ) {
    rewrite  ^(.*)    https://www.freefan.cc$1 permanent;
}
  if (!-e $request_filename) {
    rewrite (.*) /index.php last;
}
  root /data/wwwroot/www.freefan.cc/Public;
  #error_page 404 = /404.html;
  #error_page 502 = /502.html;
  
  
  location ~ [^/]\.php(/|$) {
    #fastcgi_pass remote_php_ip:9000;
    fastcgi_pass unix:/dev/shm/php-cgi.sock;
    fastcgi_index index.php;
    include fastcgi.conf;
  }
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {
    expires 30d;
    access_log off;
  }
  location ~ .*\.(js|css)?$ {
    expires 7d;
    access_log off;
  }
  location ~ /\.ht {
    deny all;
  }
}
修改后然后重启,
service nginx restart
在然后打开你的域名就可以看到自动跳转了

版权声明:若无特殊注明,本文皆为《 阿风 》原创,转载请保留文章出处。
本文链接:http自动跳转https的解决办法 https://www.feng97.com/ycjc/32.html
正文到此结束

热门推荐

发表吐槽

你肿么看?

你还可以输入 250 / 250 个字

嘻嘻 大笑 可怜 吃惊 害羞 调皮 鄙视 示爱 大哭 开心 偷笑 嘘 奸笑 委屈 抱抱 愤怒 思考 日了狗 胜利 不高兴 阴险 乖 酷 滑稽

评论信息框

吃奶的力气提交吐槽中...

已有1条吐槽

匿名

2016-12-01 09:33 广东省江门市电信
php是世界上最好的语言?
 Windows 10 x64   Google Chrome 54.0.2840.71