nginx 将 http 转换为 https
nginx 配置中想将 http 请求自动转换为 https,搜到N个方案都是下面这样的解决方法,不过我怎么试验失败呢?
回答
server { listen 80;
server_name www.xxx.com;
return 307 https://www.xxx.com$request_uri;
}
server {
listen 80;
listen 443 ssl;
server_name www.xxx.com;
location / {
root /mnt/www/xxx;
index index.htm index.html;
}
location /xxx {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:20000;
}
}
rewrite
那行的$1
,nginx
解析不出,所以重定向到 https://x.x.com
,然后你https下 /
没有配置,所以不通。
改用楼上的 $request_uri
就行。
ps:截图里域名暴露了,赶紧修改一下。
location / {
return 301 https://$server_name$request_uri;
}
以上是 nginx 将 http 转换为 https 的全部内容, 来源链接: utcz.com/a/35063.html