在我的服务器上,我有以下vhost定义:
<VirtualHost *:80 *:443>
ServerAdmin admin@mysiste.com
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /var/www/mysite.com/current/public
SSLEngine on
SSLCertificateKeyFile /etc/ssl/ssl.key/myserver.key
SSLCertificateFile /etc/ssl/ssl.crt/mysite_com.crt
SSLCertificateChainFile /etc/ssl/ssl.crt/mysite_com.ca-bundle
<Directory /var/www/mysite.com/current/public>
Allow from all
Options -MultiViews
</Directory>
</VirtualHost>
网站本身工作良好,问题是,如果我尝试任何其他网站(vhost)托管在同一服务器上的https和跳过警告我得到服务mysite.com。这对普通用户来说不是问题,但我注意到谷歌尝试并实际上通过https索引了我的"其他"网站上的大量url,这些url实际上是来自mysite.com的页面,我担心我会因为重复内容而受到惩罚。
我如何拒绝其他网站通过https服务?
我解决了问题。作为进一步的参考,这是Ubuntu 12.04。
在/etc/apache2/ports.conf
中向<IfModule mod_ssl.c>
部分添加了以下内容:
NameVirtualHost *:443
根据上述文件中的说明,将/etc/apache2/sites-available/default-ssl
中的<VirtualHost _default_:443>
修改为<VirtualHost *:443>
。
:
sudo a2ensite default-ssl
sudo service apache2 reload
。