我解决了,请参阅下面的答案!
因此,我仅使用 certbot 生成了 nginx 证书,但是我的域上的 https:// 不起作用。它给出了 403 禁止错误。
SSL 配置:
server {
listen 443 ssl;
ssl on;
ssl_certificate /etc/letsencrypt/live/[domain].xyz/cert.pem;
ssl_certificate_key /etc/letsencrypt/live/[censored].xyz/privkey.pem;
root /gopanel/sites/[doooomaiiiin cennnsoooored]/public;
index index.php index.html index.htm;
server_name [ehehehe C E N S O R E D].xyz;
location / {
proxy_pass https://localhost;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
知道为什么吗?告诉我您是否需要 http 配置。我真的不知道该如何解决这个问题。
笔记
我正在使用 Node.JS,而 Express.JS 应用程序位于端口 8080 上:)
答案1
我修好了它。
我实际上在 macOS 上使用一个名为 goPanel 2 的应用程序,它可以帮助配置 nginx、apache 等内容(它有一个用户界面,使配置变得简单)
事实证明,我不应该使用 goPanel 2 来添加 SSL,我应该使用我的终端通过 SSH 进入它并手动添加它,而不是使用 goPanel 2。
于是我输入了进去sudo certbot --nginx -d my-domain.xyz -d www.my-domain.xyz
,结果成功了!
现在我知道我应该手动完成,而不是使用 goPanel 2 来完成。我真傻。