我想将所有 URL 从主机 a.myhost.com 重定向到 b.myhost.com。我探索了所有选项 - Apache 重定向、rewriterule 指令。我希望重定向到相同的目标 URL - 即http://b.myhost.com- 不管原始 URL 是什么 (egamyhost.com/a.html)。所有声称能够做到这一点的示例实际上都做不到 (至少在我的 Apache 安装中)。a.html 被转发到重定向的主机 - 这不是我们所希望的。
有任何想法吗?
答案1
NameVirtualHost *:80
<VirtualHost *:80>
ServerName a.example.com
RedirectMatch .*$ http://b.example.com/
</VirtualHost>
看http://httpd.apache.org/docs/current/mod/mod_alias.html#redirectmatch了解详情。
答案2
RewriteEngine On
RewriteRule ^(.*)$ http://b.myhost.com/ [R,L]
那样有用吗?
答案3
我相信这样的事情会起作用
RewriteEngine on
RewriteCond %{HTTP_HOST} ^a.example.com
rewriterule ^(.*)$ http://b.example.com$1 [R=301]