当我输入此代码时,它会重定向我的整个网站。但是当我想访问 ticket.mysite.com 时,它给了我 404,因为它将我重定向到 www.ticket.mysite.com,但我不想使用子域名。
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
我已经尝试在子域的地图中粘贴没有上述代码,但这不起作用。
答案1
您最好设置虚拟主机。据我所知,您至少需要三个;默认的example.com
、www.example.com
和ticket.example.com
。然后,您可以RewriteRule
在默认虚拟主机中放置一个更简单的虚拟主机,它将任何请求重定向到https://www.example.com/$1
。然后,当客户端访问www.example.com
或ticket.example.com
虚拟主机时,就不会出现RewriteRule
。请参阅https://httpd.apache.org/docs/2.4/vhosts/examples.html。