我正在设置一个服务器,以便与一些朋友和家人共享文件。使用 HTTP 一切都运行良好,但由于我今天早上设置了 HTTPS,我无法通过我设置的公共 IP/域名访问服务器,我遇到了超时问题。它在我的本地网络之外运行良好,我可以通过 LTE 手机访问它,我的朋友也可以访问它。
这是我的 nginx 配置文件,我设置了从 HTTP 到 HTTPS 的重定向
server {
listen 80;
listen [::]:80;
server_name DOMAIN;
location / {
return 302 https://$server_name$request_uri;
}
location /.well-known/acme-challenge/ {
alias /var/www/.well-known/acme-challenge/;
}
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name DOMAIN;
ssl_certificate /etc/ssl/uacme/DOMAIN/cert.pem;
ssl_certificate_key /etc/ssl/uacme/private/DOMAIN/key.pem;
root /pool/media;
autoindex on;
charset utf-8;
location / {
add_header X-Robots-Tag "noindex, nofollow, nosnippet, noarchive";
}
location /.well-known/acme-challenge/ {
alias /var/www/.well-known/acme-challenge/;
}
}
从本地主机,我可以通过 HTTP 访问域并获取正确的 302,但访问 HTTPS 将超时。
$ curl -I http://DOMAIN
HTTP/1.1 302 Moved Temporarily
$ curl -I --resolve 'DOMAIN:443:LOCALIP' https://DOMAIN
HTTP/2 200
$ curl -I https://DOMAIN
curl: (28) Failed to connect to DOMAIN port 443 after 128882 ms: Couldn't connect to server
我已经ufw
在服务器上进行了设置,并正确配置了允许端口 80 和 443 上的流量。这可能是路由器本身的问题吗?我尝试了网上的几个工具,它们都指向一个健康的服务器,只有我的本地网络受到影响。