我从SSLforFree/ZeroSSL生成了SSL,并根据其网站https://zerossl.com/help/installation/nginx/上列出的安装步骤进行了操作

  • 下载了SSL文件
  • 将它们移至服务器
  • 与(cat certificate.crt ca_bundle.crt >> certificate.crt)
  • 合并certificate.crt和ca_bundle.crt
  • 在Nginx的hosts文件中添加了以下几行:ssl on;ssl_certificate /etc/ssl/certificate.crt;ssl_certificate_key /etc/ssl/private.key;
  • 使用(sudo service nginx restart)
  • 重新启动Nginx服务器
  • 收到错误,并通过(journalctl -xe)
  • 检查了错误详细信息
  • 错误是:nginx: [emerg] PEM_read_bio_X509_AUX(SSL: error:0908F066:PEM routines:get_header_and_data:bad end line)
  • 最佳答案

    使用cat certificate.crt ca_bundle.crt >> certificate.crt合并文件,可以在不添加任何下一行字符的情况下合并文件。
    合并文件后,打开新创建的文件,即certificate.crt,您将看到如下文件结构:-----BEGIN CERTIFICATE-----certificate-1-text-----END CERTIFICATE----------BEGIN CERTIFICATE-----certificate-2-text-----END CERTIFICATE-----如果您的证书看起来像这样,则可以通过在第二个开始证书的5个连字符之前添加一个新的行字符来解决此问题,即在编辑后它应如下所示:-----BEGIN CERTIFICATE-----certificate-1-text-----END CERTIFICATE----------BEGIN CERTIFICATE-----certificate-2-text-----END CERTIFICATE-----

    关于linux - Nginx上的SSL引发错误(SSL : error:0908F066:PEM routines:get_header_and_data:bad end line),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/62514704/

    10-13 05:13