我遇到了一个问题,nginx以某种方式一遍又一遍地重定向,但我不明白为什么:
server {
listen 80;
server_name splunk.trever.me;
return 301 https://splunk.trever.me$request_uri;
}
# Port 443 https config
server {
listen 443 ssl http2;
server_name splunk.trever.me;
location / {
proxy_buffers 16 4k;
proxy_buffer_size 2k;
proxy_pass http://10.0.1.1:8000;
}
access_log /var/log/nginx/splunk.trever.me/access.log;
error_log /var/log/nginx/splunk.trever.me/error.log;
}我是不是漏掉了什么?我看了所有的文档,似乎没有错。这是否意味着上游的某些东西正在将浏览器发送回http?
发布于 2020-03-29 10:00:47
使用以下命令:
server {
server_name splunk.trever.me;
if ($http_x_forwarded_proto = "http") {
return 301 https://$host$request_uri;
}
location / {
proxy_buffers 16 4k;
proxy_buffer_size 2k;
proxy_pass http://10.0.1.1:8000;
}
access_log /var/log/nginx/splunk.trever.me/access.log;
error_log /var/log/nginx/splunk.trever.me/error.log;
}发布于 2020-03-29 20:09:20
您可以使用nginx config中的IF指令重定向请求。
server {
listen 80;
listen 443;
server_name splunk.trever.me;
if ($scheme = http) {
rewrite ^/(.*)$ https://splunk.trever.me/$1 permanent;
}
location / {
proxy_buffers 16 4k;
proxy_buffer_size 2k;
proxy_pass http://10.0.1.1:8000;
}
access_log /var/log/nginx/splunk.trever.me/access.log;
error_log /var/log/nginx/splunk.trever.me/error.log;
} https://stackoverflow.com/questions/60909309
复制相似问题