我最近在一个网站上安装了 ssl 证书。
我试过使用ip地址访问网站
133.255.214.180
它重定向到
https://133.255.214.180/
然后显示“您的连接不是私有(private)的”ssl 证书错误。我为域名而不是 ip 地址购买了 ssl 证书。
例如当我使用域名访问时
www.example.com
然后它重定向到
https://www.example.com
没有 ssl 证书错误。
我在nginx中使用重定向作为
server {
listen 80;
server_name 133.255.214.180;
return 301 https://www.example.com;
}
我想这样做,以便当用户在浏览器的 url 栏中输入 ip 地址时,它会重定向到域名,即 https://www.example.com这样它就不会显示 ssl 证书错误。这有可能实现吗?
我很感激任何帮助。谢谢!
最佳答案
HTTPS 握手在发送实际请求之前完成,因此如果您键入 https://something_without_valid_cert您将始终收到该错误。
对于发送请求,我的意思是甚至“打开”HTTP 通信,包括发回重定向。
原因很简单,如果证书无效,您就无法信任服务器,它可以响应任何内容,包括恶意重定向。
如果您输入 http://the_ip_address,您的 nginx 配置应该可以工作.因为您发回 301(永久移动),浏览器下次将自动执行重定向,而无需调用服务器。
关于ruby-on-rails - 是否可以使用 ipaddress 来限制访问?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47994595/