使用 HTTPS 重定向到非 www

使用 HTTPS 重定向到非 www

我安装了一个 apache 网络服务器并创建了一个网站。Let's Encrypt 用于 https。我遵循了自动配置过程,非 www 网址工作正常。但如果我想使用重定向https://wwwhttps://xxxxx.com.htaccess它不起作用。

我尝试了以下设置:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)
RewriteRule ^.*$ https://%1/$1 [R=301,L]

mod_rewrite已启用。

答案1

首先,该证书对 www-Host 是否有效?如果无效,请为 www-host 获取第二个证书,并将其放在单独的<VirtualHost *:443>.

ServerAlias如果证书对域名和 www-host 有效,那么在我看来,好像<VirtualHost *:443>

另外,您还必须将“点星号”放在圆括号中才能使 $1 起作用(就像在 RewriteCond 中对 %1 所做的那样):

RewriteEngine On RewriteCond %{HTTP_HOST} ^www\.(.*) RewriteRule ^(.*)$ https://%1$1 [R=301,L]

相关内容