mod_rewrite如果使用域X,则重定向到特定URL?

qwe*_*rty 3 apache url .htaccess mod-rewrite redirect

我有一个有两个域名的网站.我希望每当访问域X时(无论路径是什么.../foo/bar /,root或其他),浏览器都应该重定向到特定的URL.

所以:

domainX.com -> domainX.com
domainY.com -> domainX.com/some/path
Run Code Online (Sandbox Code Playgroud)

以下类型有点工作,但它只匹配domainY.com,所以www.domainY.comdomainY.com/some/path不起作用.

RewriteCond %{HTTP_HOST} ^domainY\.com
RewriteRule ^(.*)$ http://domainX\.com/some/path [L]
Run Code Online (Sandbox Code Playgroud)

尽管如此,它必须接受有和没有www.有任何想法吗?

Ola*_*che 6

您可以扩展正则表达式 HTTP_HOST

RewriteCond %{HTTP_HOST} ^(?:www\.)?domainY\.com$
RewriteRule .* http://domainX.com/some/path [L]
Run Code Online (Sandbox Code Playgroud)

这是一个重写.如果要重定向客户端,则必须添加R标志

RewriteRule .* http://domainX.com/some/path [R,L]
Run Code Online (Sandbox Code Playgroud)

当一切正常时,您可以替换RR=301.永远不要测试R=301.