【发布时间】:2016-10-18 12:01:30
【问题描述】:
我有这个 nginx 配置:
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name www.example.com;
return 301 https://www.example.com$request_uri;
}
server {
listen 443 ssl http2;
server_name www.example.com;
include snippets/ssl-params.conf;
client_max_body_size 5G;
location / {
proxy_pass http://127.0.0.1:8888;
}
}
所以http://www.example.com 被重定向到https://www.example.com。问题是,https://example.com 也可以工作并将代理传递服务到端口8888。我怎样才能防止它工作?我只需要带有 www 的版本即可工作。参数 server_name 似乎没有任何作用。我正在使用“nginx 版本:nginx/1.10.1”。
【问题讨论】:
-
我最终通过为不带 www 的版本添加显式重定向来解决此问题,但仍然很好奇为什么我需要这样做并且不通过 www 代理的版本?