此内容根据文章生成,并经过人工审核,仅用于文章内容的解释与总结
投诉问题描述
在使用 Nginx 配置强制跳转 HTTPS 后,结合 Cloudflare 的 CDN 服务,可能会遇到 ERR_TOO_MANY_REDIRECTS
错误,即 301 重定向次数过多。
问题原因
Cloudflare 的 CDN 服务会自动将 HTTP 请求重定向到 HTTPS,这可能导致多次重定向循环。
解决方案
以下是优化后的 Nginx 配置,确保 HTTP 请求正确重定向到 HTTPS:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| server { listen 80; server_name example.com; root /usr/share/nginx/html; index index.html;
location / { return 301 https://$server_name$request_uri; } }
server { listen 443 ssl; server_name example.com; root /usr/share/nginx/html; index index.html;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
location / { proxy_pass http://127.0.0.1:8080; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; } }
|