我在Windows 2008 R2上使用Apache2.4。
在服务器本身和所有公司内部客户端上,HTTP工作良好,HTTPS工作良好。从HTTP重定向到HTTPS也很好。
在公司以外的客户端(即家庭机器)上,HTTP工作良好,HTTPS工作良好。但是,从HTTP重定向到HTTPS是错误的。
出现的错误消息如下:ERR_CERT_AUTHORITY_INVALID.
当发生此错误时,如果我查看证书的详细信息,它们将指示证书被颁发给“localhost.localdomain”。我还没有在我的Apache配置文件中找到那个域名。详细资料还说,证书的组织机构是我们的互联网服务提供商,于2011年5月7日签发,2021年3月4日到期。这些证书的详细信息都不适用于我们的实际证书。我们的证书是由Digicert颁发的,于2019年到期。
当我使用SSL实验室进行诊断时,测试甚至没有完全运行,出现以下错误消息:
Certificate name mismatch
Try these other domain names (extracted from the certificates):
localhost.localdomain以下是我的VirtualHost吐露:
<VirtualHost *:80>
ServerName www.example.com:80
ServerAlias example.com:80
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^/?(.*)$ https://www.example.com/$1 [NE,L,R=301]
</VirtualHost>
<VirtualHost *:443>
ServerName www.example.com:443
ServerAlias example.com:443
SSLEngine on
SSLCertificateFile "C:\https\star_example_com.crt"
SSLCertificateKeyFile "C:\https\star_example.com.key"
SSLCertificateChainFile "C:\https\DigiCertCA.crt"
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.example.com$ [NC]
RewriteRule ^/?(.*)$ https://www.example.com/$1 [NE,L,R=301]
</VirtualHost>我也尝试使用以下重定向命令重定向,但也发生了同样的情况:
Redirect permanent / https://www.example.com/发布于 2017-10-13 13:35:53
所以我们想明白了。它与HTTPS或重定向几乎没有关系。
我们有一个网站故障转移服务器,如果它检测到我们的主站点离线或故障。
显然,故障转移逻辑检测到301/302重定向为故障。神秘的证书由故障转移服务器提供。
我们必须更改故障转移逻辑,以不再将重定向视为失败。
https://stackoverflow.com/questions/46712924
复制相似问题