我正在尝试将解析到同一个网络服务器的各个网址重定向到我拥有ssl证书的域。我的apache conf有以下重写规则:
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} !^(https?://(www\.)?)?my\.domain\.org [NC,OR]
RewriteCond %{HTTPS_HOST} !^(https?://(www\.)?)?my\.domain\.org [NC]
RewriteRule ^(.*)$ https://my.domain.org$1 [R=301,L]
然后关注虚拟主机
<VirtualHost *:443>
...
</VirtualHost>
以上规则适用于http://example.org至https://my.domain.org。它们也适用于http://my.domain.org到https://my.domain.org。它们不起作用,但不适用于https://example.org到https://my.domain.org。浏览器为与主机不匹配的证书提供警告页面。有什么想法在我的条件下出了什么问题?
谢谢!
答案 0 :(得分:0)
可能不是重写规则 - 而是您已设置的(裸或SNI)虚拟主机和证书对。即主机名的值,硬编码到那些vhost的证书中。
可以预期该服务器的证书将发布到* .example.org,并且主题替代名称为example.org。
您可以使用'openssl x509 -text -noout -in cert.pem'进行检查。