【发布时间】:2014-01-17 19:03:33
【问题描述】:
我有以下设置: -> domain1.com 是我的主域,也是文档根 -> domain2.com 是另一个注册为别名域的域(意味着它与 domain1.com 完全相同),我有多个这样的域。
当我现在想将该域重定向到某个东西时,我通常使用它来将该域重定向到其他东西(例如外部网站):
RewriteCond %{HTTP_HOST} ^(www\.)?domain2.com$ [NC]
RewriteRule ^(.*) http://somewiredisp.com/user/bla/$1 [L,R]
如果我为需要一个不错的论坛 url 或其他什么的人注册一个域,通常会使用此方法。像魅力一样工作 - 唯一的“问题”是浏览器中的地址栏发生变化,但我已经读过外部 URL 无法做到这一点,因为没有人抱怨过它我没问题。
但是,现在我想在地址栏中不更改 url 的情况下将一些 url 链接到子目录。
domain2.com -> domain1.com/subdir(或 domain2.com/subdir - 没关系,因为它是别名域)。
我目前的做法是
RewriteCond %{HTTP_HOST} ^(www\.)?domain2.com$ [NC]
RewriteRule ^(.*) http://domain1.com/subdir/ [P]
这不起作用(错误 404) - 如果我直接调用 domain1.com/subdir/ 如果明显有效。
我也尝试了几种变体
RewriteRule ^(.*) http://domain2.com/subdir/ [P]
RewriteRule ^(.*) /subdir/ [P]
RewriteRule ^(.*) http://domain1.com/subdir/index.html [P]
结果都一样。
也许这只是一个简单的错误,但我目前一无所知:/
【问题讨论】:
标签: regex apache .htaccess redirect mod-rewrite