Nginx ssl - SSL:错误:0906D06C:PEM 例程:PEM_read_bio:没有起始行

Ale*_*lex 10 ssl nginx

我正在尝试使用来自 123-reg 的证书在服务器上启用 ssl,但我不断收到此错误:

nginx: [emerg] SSL_CTX_use_certificate_chain_file("/opt/nginx/conf/cleantechlms.crt") failed (SSL: error:0906D06C:PEM routines:PEM_read_bio:no start line error:140DC009:SSL routines:SSL_CTX_use_certificate_chain_file:PEM lib)
Run Code Online (Sandbox Code Playgroud)

这是我的 nginx 配置:

server {
  listen 443;
  server_name a-fake-url.com;
  root /file/path/public;   
  passenger_enabled on;

  ssl on;
  ssl_certificate /opt/nginx/conf/cleantechlms.crt;
  ssl_certificate_key /opt/nginx/conf/cleantechlms.key;
 }
Run Code Online (Sandbox Code Playgroud)

我尝试将我的 crt 和密钥设置为完整文件权限,但没有区别。

我的 crt 文件是我发出的与 ca crt 连接的 crt。

更新

我曾尝试复制 sperate 文件中的两个密钥,然后运行“cat mykey.crt >> ca.cert”

我也尝试手动将密钥复制到同一个文件中。

有任何想法吗?

Ale*_*lex 6

感谢您的帮助,我是这样解决的:

  • 将证书复制到文本编辑器中以确保没有空格(我已经这样做了)

  • 确保开始和结束证书声明在各自的行上,并且每端都有相同数量的“-”。

  • 确保每行有 64 个字符(最后一行除外)