我对 Nginx SSL 设置有疑问。我有一个默认设置/etc/nginx/nginx.conf
我尝试了一个非常简单的设置/etc/nginx/sites-enabled
:
server
{
listen 80;
server_name sub.mydomain.com;
return 301 https://$host$request_uri;
# This root works
#root /var/www/html;
}
server
{
listen 443 default_server ssl;
server_name sub.mydomain.com;
ssl on;
ssl_certificate /var/www/html/cert.pem;
ssl_certificate_key /var/www/html/key.pem;
root /var/www/html;
}
HTTP 有效,但 HTTPS 无效。运行时连接被拒绝:
curl -v https://sub.mydomain.com
我尝试将 /etc/hosts 设置为:
127.0.0.1 sub.mydomain.com
没有问题,如果我在本地使用服务器中的 Web 浏览器访问该页面,我可以看到绿色的 SSL 栏。但是,如果我使用另一台计算机从外部访问该页面,我仍然会被拒绝连接。
我还尝试通过以下方式启用 Ubuntu 防火墙并允许 SSL:
ufw allow 443
这没用。
Nginx的日志文件没有错误
编辑 1
我已经尝试过listen 0.0.0.0:80
,listen 0.0.0.0:443
但仍然无法正常工作
的输出netstat -nlp | grep nginx
:
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 12591/nginx -g daem
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 12591/nginx -g daem
有人可以帮忙吗?谢谢。