我们有多个子域,每个子域都在httpd.conf中有自己的虚拟主机条目,并且在ssl.conf中也有(对于支持https的那些)。我们的主要www子域具有与之关联的GoDaddy证书。我正在我们的开发服务器(“api.bulbstorm.com”)上配置的子域有一个ssl.conf虚拟主机条目,如下所示:
<VirtualHost 172.16.247.153:443>
DocumentRoot "/var/www/api"
ServerName api.bulbstorm.com:443
ErrorLog logs/api-error_log
CustomLog logs/api-access_log common
LogLevel warn
SSLEngine on
SSLProtocol all -SSLv2
SSLCertificateFile /var/www/certs/api/server.crt
SSLCertificateKeyFile /var/www/certs/api/server.key
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
<Directory "/var/www/api">
Options +FollowSymLinks
RewriteEngine On
AllowOverride All
Order allow,deny
Allow from all
</Directory>
php_value include_path "/var/www/inc"
SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog logs/ssl_request_log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
... crt&amp; / var / www / certs / api /中的密钥文件是根据找到的here指令使用openssl生成的。
api子域最初指向www子域的godaddy证书。但即使我已经将与api子域相关联的虚拟主机条目更改为指向自签名证书/密钥对(并重新启动了httpd,完全清除了与godaddy证书的先前异常相关的浏览器设置等)浏览器仍在发出警告说该证书是针对www域名的。当我查看浏览器提供的证书时,看起来他们仍然在获得godaddy证书。
在ssl.conf文件中,有以下几行:
SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
此证书/密钥对与www子域的虚拟主机条目中引用的godaddy证书/密钥对不同,如下所示:
SSLCertificateFile /etc/www.bulbstorm.com_ssl/www.bulbstorm.com.crt
SSLCertificateKeyFile /etc/www.bulbstorm.com_ssl/www.bulbstorm.com.key
SSLCertificateChainFile /etc/www.bulbstorm.com_ssl/gd_intermediate_bundle.crt
任何人都可以解决我遇到的问题,我们将不胜感激。
答案 0 :(得分:0)
这个问题的“答案”是将它重新发布在serverfault.com上。