我安装了一个 apache 网络服务器并创建了一个网站。Let's Encrypt 用于 https。我遵循了自动配置过程,非 www 网址工作正常。但如果我想使用重定向https://www
到https://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]