Nginx配置导致无限重定向循环。
Nginx配置导致无限重定向循环。
所以我查看了我能找到的所有示例配置,但是每次尝试查看需要ssl的页面时,我都会陷入重定向循环中。我正在运行nginx/0.8.53和passenger 3.0.2。
这是ssl配置:
server { listen 443 default ssl; server_name .com www..com; root /home/app//public; passenger_enabled on; rails_env production; ssl_certificate /home/app/ssl/.com.pem; ssl_certificate_key /home/app/ssl/.key; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X_FORWARDED_PROTO https; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-Url-Scheme $scheme; proxy_redirect off; proxy_max_temp_file_size 0; location /blog { rewrite ^/blog(/.*)?$ http://blog..com/$1 permanent; } location ~* \.(js|css|jpg|jpeg|gif|png)$ { if (-f $request_filename) { expires max; break; } } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
这是非ssl配置:
server { listen 80; server_name .com www..com; root /home/app//public; passenger_enabled on; rails_env production; location /blog { rewrite ^/blog(/.*)?$ http://blog..com/$1 permanent; } location ~* \.(js|css|jpg|jpeg|gif|png)$ { if (-f $request_filename) { expires max; break; } } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
请让我知道是否有任何额外的信息可以提供帮助诊断问题。
admin 更改状态以发布 2023年5月21日
这是你的行:
listen 443 default ssl;
把它改成:
listen 443; ssl on;
这就是我称之为旧风格的方式。
此外,
proxy_set_header X_FORWARDED_PROTO https; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-Url-Scheme $scheme; proxy_redirect off; proxy_max_temp_file_size 0;
对我非常有用。我现在发现我缺少你的真实IP行,但是到目前为止,这解决了我的ssl_requirement和ssl_enforcer无限循环的问题。