1

我正在尝试使用新安装的 SSL 证书设置我们的 VPS。该证书仅适用于 domain.com,不适用于 www.domain.com。因此,当用户访问https://www.domain.com时,他们现在会收到“不安全页面”警告——我当然不希望这样。我想将用户重定向到https://domain.com,但我一直陷入无限循环。

这是我的虚拟主机文件..

<VirtualHost *:80>
     ServerAdmin my@email.com
     ServerName domain.com
     ServerAlias domain.com
     Redirect permanent / https://domain.com/
     DocumentRoot /var/www/domain.com/
     <Directory /var/www/domain.com/>
        AllowOverride ALL
     </Directory>
     ErrorLog /var/www/logs/domain.com/error.log
     CustomLog /var/www/logs/domain.com/access.log combined
</VirtualHost>

<VirtualHost *:443>
     ServerAdmin my@email.com
     ServerName domain.com
     ServerAlias domain.com
     DocumentRoot /var/www/domain.com/
     <Directory /var/www/domain.com/>
        AllowOverride ALL
     </Directory>
     ErrorLog /var/www/logs/domain.com/error.log
     CustomLog /var/www/logs/domain.com/access.log combined
     SSLEngine on
     SSLProtocol all
     SSLCertificateFile /etc/ssl/mycert.crt
     SSLCertificateKeyFile /etc/ssl/mykey.key
     SSLCACertificateFile /etc/ssl/myca.crt
</VirtualHost>

我是这方面的初学者,除了购买我真的买不起的通配符证书之外,我似乎找不到解决方案.. 非常感谢您提前!

4

1 回答 1

0

您可能需要将所有 www url 调用重定向到非 www .. 使用 .htaccess 尝试以下重写规则

RewriteEngine On
RewriteCond %{HTTP_HOST}  ^www.example.com [nocase]
RewriteRule ^(.*)         http://example.com/ [last,redirect=301]

将 example.com 替换为您的域名,并确保将其放在您网站文档根目录的 .htaccess 中。

于 2013-11-24T08:02:02.313 回答