nic2013 发表于 2015-11-12 13:45:32

LNMP V1.3 怎么强制使用 HTTPS 访问 【已解决】

军哥,我在域名conf设置了只监听443端口,但是这样的话,域名80端口访问就访问到默认目录/home/wwwroot/default里面去了。使用 https://域名.com可以正常访问。怎么解决呢 ?

[ 本帖最后由 nic2013 于 2015-11-12 19:21 编辑 ]

licess 发表于 2015-11-12 17:12:57

参考301教程,将http上的访问301到https上 http://lnmp.org/faq/lnmp-nginx-301-rewrite.html

nic2013 发表于 2015-11-12 19:21:11

回复 2# 的帖子

不行哦,此网页包含重定向循环。我瞎捣鼓,用下面的方法弄好了。
server
    {
      listen 80;
      listen 443 ssl;
      #listen [::]:80;
if ($server_port ~ "^80$"){
set $rule_0 1$rule_0;
}
if ($rule_0 = "1"){
rewrite /(.*) https://域名.com/$1 permanent;
break;
}
index index.html index.htm index.php default.html default.htm default.php;
root/home/wwwroot/www.域名.com;

ssl on;
      ssl_certificate /root/ssl.crt;
      ssl_certificate_key /root/ssl.key;
      server_name www.域名.com 域名.com;
      index index.html index.htm index.php default.html default.htm default.php;

      include none.conf;
      #error_page   404   /404.html;
      include enable-php.conf;

      location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
      {
            expires      30d;
      }

      location ~ .*\.(js|css)?$
      {
            expires      12h;
      }

      access_log/home/wwwlogs/域名.com.logaccess;
    }

licess 发表于 2015-11-12 19:39:07

回复 3# 的帖子

肯定你配置问题

这种if效率很低,非常不建议使用if
页: [1]
查看完整版本: LNMP V1.3 怎么强制使用 HTTPS 访问 【已解决】