所以我跟着这使用 acme 脚本为 nginx 设置 letsencrypt ssl 的指南,一切运行良好,我已经设置好了,我可以通过 ssl 访问我的网站 (wasabi.guru),但它返回了 404 错误。当通过非 https 访问我的网站时,它不会返回 404 错误,而且非常好,只有当我尝试访问时,它才会https://wasabi.guru
返回 404。到底是怎么回事?
server {
server_name wasabi.guru;
ssl on;
listen 443 ssl;
listen [::]:433 ssl;
ssl_certificate /etc/nginx/ssl/wasabi.guru.cer;
ssl_certificate_key /etc/nginx/ssl/wasabi.guru.key;
ssl_session_timeout 30m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES$
ssl_session_cache shared:SSL:10m;
ssl_dhparam /etc/nginx/ssl/dhparams.pem;
ssl_prefer_server_ciphers on;
ssl_buffer_size 8k;
ssl_stapling on;
resolver 8.8.8.8;
ssl_stapling_verify on;
add_header Strict-Transport-Security max-age=31536000
access_log /var/log/nginx/wasabi.guru/ssl_access.log;
error_log /var/log/nginx/wasabi.guru/ssl_error.log
## END SSL CONFIG ##
location / {
root /usr/share/nginx/html/;
index index.html index.htm;
}
}
据我所知,这都是正确的,应该可以正常工作,我已经更改了几次,但仍然没有结果,我查看了 wasabi.guru 的 ssl 配置,以确保文档根目录相同,结果确实如此。说实话,我对这类东西还是个超级菜鸟,这是我第一次设置 ssl,我通常只使用 nginx 的默认配置,所以如果我遗漏了什么,我肯定不会发现它。
任何信息都很有用,如果有任何日志或配置文件可以帮助解决这个问题,请告诉我,我会发布它们。
谢谢您的帮助。
附言:该服务器运行的是 Arch Linux,这确实是一个坏主意,但我生活在边缘:^)
答案1
答案是 Elijah 没有正确配置 Nginx。特别是没有重新启动 Nginx。
提交此答案是为了将问题标记为已回答,从而减少其他人阅读该问题的需要。