我们在这里运行Vagrant虚拟机。在虚拟机上,我安装了nginx。然后,我创建了一个自签名证书。当我查看证书的内部时,我看到:
subject= /C=US/ST=IN/L=myCity/O=My Company/OU=MyProduct/CN=silly.com/emailAddress=info@silly.com这显然是经过消毒的。我相信这个证书应该适用于silly.com。我的解释正确吗?
在我的笔记本电脑上,我添加了一个主机文件条目以将silly.com映射到适当的IP地址。
在VM上,我将以下配置添加到/etc/nginx/conf.d/default.conf
# HTTPS server server {
listen 443;
server_name silly.com;
ssl on;
ssl_certificate /etc/nginx/ssl/silly.crt;
ssl_certificate_key /etc/nginx/ssl/silly.key; }当我浏览网站时,80http端口屏幕显示正常。但是,当我使用https://silly.com浏览时,https部分被拒绝,并显示非SSL屏幕。(我想我在实验时点击了“继续”...)
我注释了nginx.conf文件中与端口80相关的所有行。然后我重新启动了nginx。我将在端口80上获得相同的成功,并在端口443上获得与之前相同的失败。
我用nginx -t测试了配置文件。它没有报告错误。
有人能提供一个调试技巧吗?
发布于 2016-10-26 03:05:37
这可能与以下事实有关:由于# HTTPS server注释,打开的server {块实际上被注释掉了。您实际上应该在这个配置中得到一个错误,因为关闭的}就在那里。也许这会阻止你重启Nginx。
https://stackoverflow.com/questions/29496471
复制相似问题