好的,首先,我对这些都很陌生,仍在学习。我已经设置了 Nginx,并且我的标准反向代理在我的网络内部和外部都可以工作。我已经设置了 certbot 并生成了通配符 SSL 证书,我正在尝试设置我的代理以使用它。现在,它们在我的网络上运行良好,但在我的网络之外,我们收到“无法打开页面,因为发生了太多重定向”。有没有人更有知识,可以看看并修复我弄坏的东西?
以下是我尝试使用的配置:
server {
listen 80;
server_name subdomain.mysite.org;
return 301 https://subdomain.mysite.org$request_uri;
}
server {
listen 443 ssl;
server_name subdomain.mysite.org;
ssl_certificate /etc/letsencrypt/live/mysite.org/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/mysite.org/privkey.pem;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://internalIP:port;
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_set_header X-Forwarded-Proto $scheme;
proxy_headers_hash_max_size 512;
proxy_headers_hash_bucket_size 128;
}
}
答案1
我终于找到了答案。这不是 NGINX 配置问题。这是 Cloudflare 的问题,他们默认使用“灵活” SSL(在客户端和 Cloudflare 之间),而我们真正想要的是“完整” SSL。
如果在 Cloudflare 注册,请注意这一点。