嘿,由于我试图在我的网站上安装 SSL,所以如果不将其从配置中删除,我就无法重新启动。
我正在运行 Ubuntu Ubuntu 18.04 x64
SSL 的变更:
文件根目录 /var/www/html ServerName my_site_name.com——这里有实际的站点名称 SSLEngine 开启 SSLCertificateFile /ssl-files/site_name.com.crt # 我在这里有实际的证书 SSLCertificateKeyFile /ssl-files/site_name.key # 这里有实际的密钥名称
然而,当我运行这个时,我在conf中得到了
apache2.service 的作业失败,因为控制进程退出并显示此错误代码。 有关详细信息,请参阅“systemctl status apache2.service”和“journalctl -xe”。
由于某种原因,当我删除 SSL 部分时,它可以正常工作,我尝试清除并重新安装 apache2,但没有成功。
apache2.server 日志:
apache2.service - Apache HTTP 服务器 已加载:已加载(/lib/systemd/system/apache2.service;已启用;供应商预设:已启用) 插入:/lib/systemd/system/apache2.service.d └─apache2-systemd.conf 活动:失败(结果:退出代码)自 2018-09-29 星期六 13:08:42 UTC;1 分钟 41 秒前 进程:19553 ExecStop=/usr/sbin/apachectl stop(代码=exited,状态=0/SUCCESS) 进程:19563 ExecStart=/usr/sbin/apachectl start(代码=exited,状态=1/FAILURE) 主 PID:18805(代码=已退出,状态=0/成功) 9 月 29 日 13:08:42 nickr.0103 systemd[1]:正在启动 Apache HTTP 服务器... 9 月 29 日 13:08:42 nickr.0103 apachectl[19563]: 操作“启动”失败。 9 月 29 日 13:08:42 nickr.0103 apachectl[19563]: Apache 错误日志可能有更多信息。 9 月 29 日 13:08:42 nickr.0103 systemd[1]: apache2.service: 控制进程已退出,代码=退出状态=1 9 月 29 日 13:08:42 nickr.0103 systemd[1]: apache2.service: 失败,结果为“退出代码”。 9 月 29 日 13:08:42 nickr.0103 systemd[1]: 无法启动 Apache HTTP 服务器。
我之前已经读过这个错误,所以我更改了密钥和 crt,但它仍然出现这个错误。
[2018 年 9 月 29 日星期六 14:16:39.277651] [ssl:emerg] [pid 20797] AH02562:无法配置证书 www.my_site.com:443:0(带链),请检查 /ssl-files/my_site.crt [2018 年 9 月 29 日星期六 14:16:39.277794] [ssl:emerg] [pid 20797] SSL 库错误:错误:0906D06C:PEM 例程:PEM_read_bio:无起始行(预期:TRUSTED CERTIFICATE)——文件内容或格式错误 - 或者只是忘记了 SSLCertificateKeyFile? [2018 年 9 月 29 日星期六 14:16:39.277820] [ssl:emerg] [pid 20797] SSL 库错误:错误:140DC009:SSL 例程:use_certificate_chain_file:PEM lib AH00016:配置失败
答案1
[Sat Sep 29 14:16:39.277794 2018] [ssl:emerg] [pid 20797] SSL Library Error: error:0906D06C:PEM routines:PEM_read_bio:no start line (Expecting: TRUSTED CERTIFICATE) -- Bad file contents or format - or even just a forgotten SSLCertificateKeyFile?
此行是实际错误。证书格式不正确或已损坏。
验证证书是否可读,以openssl x509 -noout -modulus -in certificate.crt
验证证书。它应该输出证书的模数。
要验证密钥,请使用openssl x509 -noout -modulus -in keyfile.key
。
证书和密钥文件的模数还应相同。否则它们不匹配。
如果 openssl 失败,请从您的提供商处获取新的证书文件。