将多个域/ URL重定向到一个规范域

baf*_*mca 7 apache mod-rewrite redirect

我在Apache的重写指南中看到了如何将非www请求重定向到www请求的技巧:

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

其中将example.com的所有请求重定向到www.example.com.

但是我如何添加我想要来自example1.com,www.example1.com,example2.com,www.example2.com等的请求重定向到www.example.com?

编辑:

这是解决方案:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/?(.*) http://www.example.com/$1 [L,R,NE] 
Run Code Online (Sandbox Code Playgroud)

略有不同的RewriteRule并添加了'RewriteEngine on'

cee*_*yoz 5

但是,如何添加我希望来自 example1.com、www.example1.com、example2.com、www.example2.com 等的请求重定向到 www.example.com 呢?

你已经这么做了。您的重写规则规定“如果 HTTP_HOST 不是 www.example.com(且不为空),则重定向到 www.example.com”。

只要您的服务器设置为将其他域指向您托管 www.example.com 的同一目录,就一切就绪。