Nginx
Nginx 沒有正確監聽 80 埠
Nginx 似乎只監聽 HTTPS。這是埠 80 的根配置,它不起作用(無響應)。我有兩個單獨配置的子域,其中一個確實接收 HTTP 請求(mail.example.de)
雲:
server { listen 80; listen [::]:80; server_name cloud.example.de; # enforce https return 301 https://$server_name$request_uri; }
郵件:
server { listen 80 ssl; listen [::]:80 ssl; ssl_certificate /etc/letsencrypt/live/mail.example.de/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/mail.example.de/privkey.pem; server_name mail.example.de; location / { proxy_pass http://127.0.0.1:480; } location /.well-known { root /var/www/letsencrypt; } }
根:
server { listen 80 default_server; listen [::]:80; server_name *.example.de example.de; return 301 https://$host$request_uri; }
我覺得這沒有發送任何回復有點奇怪,所以我嘗試了
server { listen 80 default_server; listen [::]:80; server_name *.example.de example.de; return 200 'Response!'; add_header Content-Type text/plain; }
你檢查過 nginx 服務狀態嗎?它的日誌?
乍一看:你不能在同一個埠上同時擁有 http 和 https 偵聽器。
從您的配置中刪除“郵件”片段 - 或更改其 80 埠(無論如何,https 通常使用 443)。重新啟動 nginx,這應該會修復您的 http 站點。