2.4.38
我在 Debian 10 (amd64) 上运行 Apache v 4.19.0-11-cloud
,但我的通配符证书无法工作
我完成的步骤(全部以 root 身份执行):
- 使用以下方式颁发 Let's Encrypt 证书acme.sh
acme.sh --issue --apache -d example.com -d '*.example.com' --dns dns_cf
- 冉
acme.sh --list
:
Main_Domain KeyLength SAN_Domains CA Created Renew
example.com "" '*.example.com' LetsEncrypt.org Thu 22 Oct 2020 11:35:09 AM UTC xxxx
- 在我的 Apache 安装上安装它:
acme.sh --install-cert -d example.com \
--cert-file /etc/apache2/2.2/ssl/wildcard-cert.pem \
--key-file /etc/apache2/2.2/ssl/wildcard-key.pem \
--fullchain-file /etc/apache2/2.2/ssl/letsencrypt.pem \
--reloadcmd "systemctl force-reload apache2"
- 并附上我的
/etc/apache2/apache2.conf
SSLCertificateFile /etc/apache2/2.2/ssl/wildcard-cert.pem
SSLCertificateKeyFile /etc/apache2/2.2/ssl/wildcard-key.pem
SSLCertificateChainFile "/etc/apache2/2.2/ssl/letsencrypt.pem"
SSLCACertificatePath "/etc/apache2/2.2/ssl/"
SSLCACertificateFile "/etc/apache2/2.2/ssl/letsencrypt.pem"
如果我尝试使用 https 连接,ERR_SSL_PROTOCOL_ERROR
在 Chrome 上可以访问,而Secure Connection failed
在 Firefox 上则
我试过 :
- 检查访问和错误日志,没有任何错误
- 使用以下方法禁用和启用 mod_ssl
a2dismod ssl && a2enmod ssl
- 修改
/etc/apache2/sites-available/default-ssl.conf
以反映新证书
SSLCertificateFile /etc/apache2/2.2/ssl/wildcard-cert.pem
SSLCertificateKeyFile /etc/apache2/2.2/ssl/wildcard-key.pem
- 禁用 ufw
ufw disable
尝试重新颁发证书
尝试重新安装所有 LAMP 堆栈
检查了我的托管公司是否在防火墙上阻止了端口 443,但事实并非如此
我在这里封锁,我找不到办法让它工作
答案1
1-检查 apache 是否正在监听 443 /etc/apache2/2.2/ports.conf:
收听 443
2- 将您当前的配置包装在虚拟主机中:
<VirtualHost *:443>
ServerName example.com
DocumentRoot <path-public-root>
SSLEngine on
SSLCertificateFile /etc/apache2/2.2/ssl/wildcard-cert.pem
SSLCertificateKeyFile /etc/apache2/2.2/ssl/wildcard-key.pem
SSLCertificateChainFile "/etc/apache2/2.2/ssl/letsencrypt.pem"
SSLCACertificatePath "/etc/apache2/2.2/ssl/"
SSLCACertificateFile "/etc/apache2/2.2/ssl/letsencrypt.pem"
ErrorLog /var/log/apache2/error_ssl.log LogLevel warn
</VirtualHost>
3- 检查并验证你的证书,因为你的网站上线了DigiCert
4-查询您的端点:
openssl s_client -connect example:443