首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >nginx HTTPS重定向

nginx HTTPS重定向
EN

Stack Overflow用户
提问于 2015-03-08 18:44:26
回答 3查看 441关注 0票数 2

我想让我的网站只使用HTTPS。我查看了所有的堆栈溢出,并尝试了许多建议的设置,为网站的nginx设置文件,但我仍然不能使所有的地址组合工作。我需要在文件中修改什么才能让它正常工作?

这两个地址组合不会重定向-

  • http://www.example.com >无重定向(错误输出)
  • https://example.com >无重定向(错误输出)

这是设置文件的样子-

代码语言:javascript
复制
server {
    listen         [::]:80;
    server_name www.example.com;
    return 301 https://$host$request_uri;
}

server {
    listen         [::]:80;
    server_name example.com;
    return 301 https://$host$request_uri;
}

server {
    listen [::]:443 default_server ipv6only=off;
    server_name example.com www.example.com;

    # rest of config file...
}
EN

回答 3

Stack Overflow用户

发布于 2015-03-09 05:58:22

我通过以下方式在服务器上完成了这一任务:

代码语言:javascript
复制
server {
    listen 80;
    server_name example.com;
    rewrite ^/(.*) https://example.com/$1 permanent;
}

乍一看,您的配置看起来还不错,但是 directive documentation确实注意到了在您的配置中会遇到的旧版本的nginx的一些限制。

最后,在安全服务器配置中,您可以包含一个https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security指令,使客户端将来只能通过TLS连接到您的域。

代码语言:javascript
复制
    add_header Strict-Transport-Security max-age=31536000;
票数 0
EN

Stack Overflow用户

发布于 2016-03-30 23:27:54

下面的配置将example.com重定向到https://example.com

代码语言:javascript
复制
server {
       listen         80;
       server_name    *.example.com;
       return         301 https://$server_name$request_uri;
}

server {
       listen         443 ssl;
       server_name    *.example.com;

       [....]
}

但是,如果要将所有域重定向到https:

  • 将server_name更改为_ (server_name _;)
  • 在重定向规则中将$server_name变量替换为$host (返回301uri;)
票数 0
EN

Stack Overflow用户

发布于 2016-03-31 02:48:46

你可以这样用

代码语言:javascript
复制
server {
    listen          192.168.1.1:443 ssl;
    server_name     www.example.com;
    ssl_certificate www.example.com.crt;
    ...
}

server {
    listen          192.168.1.2:443 ssl;
    server_name     www.example.org;
    ssl_certificate www.example.org.crt;
    ...
}

servers.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28930410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档