Nginx SSL 连接被拒绝,但在本地工作

Nginx SSL connection refused, but works locally

我对 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

没有问题,如果我在本地使用服务器中的网络浏览器访问该页面,我可以看到绿色的 SSL 栏。但是,如果我使用另一台计算机从外部访问该页面,我仍然会被拒绝连接。

我还尝试启用 Ubuntu 防火墙并通过以下方式允许 SSL:

ufw allow 443

没用。

Nginx的日志文件没有错误

编辑 1

我已经尝试了 listen 0.0.0.0:80listen 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

有人可以帮忙吗?谢谢。

我打开路由器433端口解决了问题。换路由器忘记开端口

感谢 Will 提供有关外部防火墙的想法。