申请https证书时候我加了密码,在nginx配置证书后无法访问
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
![]() ![]() 使用加密的私钥(带密码) 很可能是导致 HTTPS 访问失败的原因之一。Nginx 在启动时无法自动解密私钥(除非配置密码),导致 SSL 握手失败,从而无法访问。 私钥加密导致 Nginx 无法自动加载如果私钥文件(key.pem)是用 openssl genrsa -aes256 等命令加密生成的,会要求输入密码才能使用。 Nginx 不会自动提示输入密码,因此无法加载私钥,导致 HTTPS 无法正常工作。 Nginx 日志会报错检查 Nginx 错误日志(/var/log/nginx/error.log 或 C:\nginx\logs\error.log),通常会看到类似错误: SSL_CTX_use_PrivateKey failed (SSL: error:0909006C:PEM routines:PEM_read_bio:no start line) 或者: PEM lib: can't read key 解决方法方法 1:移除私钥密码,或者重新申请一遍证书,过程中不要加入密码。 方法 2:在 Nginx 配置中指定私钥密码 在 Nginx 配置中使用 ssl_password 参数 server { listen 443 ssl; server_name example.com; ssl_certificate C:/test/crt.pem; ssl_certificate_key C:/test/key.pem; # 指定私钥密码(如果私钥文件有密码) ssl_password "your_password"; # 替换成你的私钥密码 # 其他 SSL 配置... }
该文章在 2025/9/1 11:10:25 编辑过 |
关键字查询
相关文章
正在查询... |