如何从请求 URL 中删除 www 部分并重定向到该部分

如何从请求 URL 中删除 www 部分并重定向到该部分

我有指向多个域的主机。我需要从请求的 URL 中删除“www”部分并重定向到它。

Ex: 1. www.abc.com rediect to abc.com
    2. www.xyz.com redirect to xyz.com

我需要动态地进行此操作。

我使用下面的 URL 重写来执行此操作,但它不起作用。

RewriteCond %{HTTP_HOST} ^www\.%{REQUEST_URI}\.com$
RewriteRule ^/?$ "https\:\/\/%{REQUEST_URI}\.com\/" [R=301,L]

非常感谢您的帮助。

答案1

您可以尝试以下规则:

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

这会将 www 重定向到非 www,并且仅适用于 http URL。如果需要,您可以将其更改为 https。如果您在.htaccess文件中写入此配置,则需要确保您具有正确的AllowOverride配置选项。否则,该.htaccess文件将不会被执行。

相关内容