我正在尝试使用Nginx为我的Ubuntu服务器设置Https。我在 localhost 上运行一个应用程序并使用反向代理。这是我第一次使用 Linux 和 nginx。我的 https 请求每次都失败。我将尝试从服务器中包含尽可能多的相关详细信息:
我已经为我的网站分配了一个域名,并使用 certbot 配置了 ssl 证书。
当我使用http发出请求时,它成功了: curl 请求到 http 端口
但是https请求总是失败: curl请求https端口
端口 443 和 80 均处于活动状态且正在监听: 活动端口
为了简化调试,我现在已经将 nginx 配置为将 http 请求(端口 80)重定向到 https(端口 443)。这意味着现在对我的 http 发出的请求也会失败。这是我网站的配置文件: nginx conf 文件
以下是我发出 https 请求后 nginx 调试日志的片段:
2024/12/28 18:27:40 [debug] 21424#21424: *207 http script copy: "https://"
2024/12/28 18:27:40 [debug] 21424#21424: *207 http script var: "chatbot.sweatsupport.site"
2024/12/28 18:27:40 [debug] 21424#21424: *207 http script var: "/ws/socket.io/?EIO=4&transport=polling&t=PGEXYJx"
2024/12/28 18:27:40 [debug] 21424#21424: *207 http finalize request: 301, "/ws/socket.io/?EIO=4&transport=polling&t=PGEXYJx" a:1, c:1
2024/12/28 18:27:40 [debug] 21424#21424: *207 http special response: 301, "/ws/socket.io/?EIO=4&transport=polling&t=PGEXYJx"
2024/12/28 18:27:40 [debug] 21424#21424: *207 http set discard body
2024/12/28 18:27:40 [debug] 21424#21424: *207 HTTP/1.1 301 Moved Permanently
Server: nginx/1.24.0 (Ubuntu)
Date: Sat, 28 Dec 2024 18:27:40 GMT
Content-Type: text/html
Content-Length: 178
Connection: keep-alive
Location: https://chatbot.sweatsupport.site/ws/socket.io/?EIO=4&transport=polling&t=PGEXYJx
我从日志中了解到,做出了 301 http 响应。似乎没有上游日志显示对 localhost:8000 的任何请求。我确实试图理解日志,但这会导致更多混乱,所以我不会提及这一点。
我已经因为这个错误而苦恼了 3 天,浏览了尽可能多的论坛,但毫无进展。如果您需要更多信息,请告诉我。如果您有任何建议,我将不胜感激。