我正尝试使用nginx从EC2实例提供静态网站。 我也使用Cloudflare作为CDN和DNS。 Alogging指向我的实例的公有IP,同时还有一个用于www的CNAME,它parsing为非www域。
该网站工作得很好,Chrome浏览器和curl,但我得到一个Firefox和Safari的连接错误。
这是Cloudflare上的DNSconfiguration:
这是我的网站configuration:
server { listen 80; server_name www.duomov.com; client_max_body_size 100M; root /var/www/duomov/duomov-website; location / { try_files $uri $uri/ =404; } if ($http_x_forwarded_proto = "http") { return 301 https://$server_name$request_uri; } } server { server_name duomov.com; return 301 https://www.duomov.com$request_uri; } server { listen 443; server_name duomov.com; return 301 https://www.duomov.com$request_uri; }
这绝对是DNScaching问题。 尝试重新启动机器,以确保所有可能的DNScaching都被刷新。 CloudFlareconfiguration不能导致一个浏览器types连接到IP A和IP B – 系统的这一层不知道区别。
请注意,请确保有问题的IP是弹性IP,否则最终会丢失它,并且您的站点将会closures,直到CloudFlareconfiguration更改可以传播。 或者,将CloudFlare指向CNAME作为面向您的实例的ELB。