Apache 的重定向规则:将 www 添加到 URL

Apache 的重定向规则:将 www 添加到 URL

我想添加www到我的网址,例如example.com.au.现在,如果我www.example.com.au在浏览器中输入,它会更改为http://example.com.au。我希望它是http://www.example.com.au

下面是服务器中的重定向规则

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

需要对上述重定向规则进行哪些更改才能将www其添加到URL.

答案1

规范主机名描述:

此规则的目标是强制使用特定主机名,优先于可用于到达同一站点的其他主机名。例如,如果您希望强制使用 www.example.com 而不是 example.com,您可以使用以下配方的变体。解决方案:

对于在 80 以外的端口上运行的站点

RewriteCond %{HTTP_HOST}   !^www\.example\.com [NC]
RewriteCond %{HTTP_HOST}   !^$
RewriteCond %{SERVER_PORT} !^80$
RewriteRule ^/(.*)         http://www.example.com:%{SERVER_PORT}/$1 [L,R]

对于在端口 80 上运行的站点

RewriteCond %{HTTP_HOST}   !^www\.example\.com [NC]
RewriteCond %{HTTP_HOST}   !^$
RewriteRule ^/(.*)         http://www.example.com/$1 [L,R]

参考:重写指南

相关内容