.htaccess子域重定向与变量

时间:2011-09-12 08:35:48

标签: .htaccess url variables mod-rewrite url-rewriting

我正在寻找一种方法来获得像

这样的网址
  

-cbbbc.example.com

重定向到

  

example.com/something/maybesomethingelse/-cbbbc

所以 $。example.com 应重定向到 example.com/1/2 / $

通常你只需要在example.com之前拿一切,然后将它重定向到另一个地方。但我确实有admin.example.com和otherstuff.example.com,我不想重定向,因为他们已经有其他重定向。

example.com之前的变量可以是任何东西,它唯一的规则是它以某个字符开头“ - ”在这种情况下,具有特定数量的字符(在这种情况下为5)并且永远不是其中之一预定的名称(例如管理员,注销,登录等)

有没有办法制定一个符合所有这些标准并根据它们重定向的htaccess规则?

另外:如果-cbbbc.example.com可以重定向到example.com/1/2/cbbbc,而不使用短划线,则可获得奖励。这可能吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

RewriteCond %{HTTP_HOST}   !^admin\.example.com$ [OR]
RewriteCond %{HTTP_HOST}   !^login\.example.com$ [OR]
RewriteCond %{HTTP_HOST}   !^logout\.example.com$
RewriteCond %{HTTP_HOST}   -(.{5})\.example.com
RewriteRule (.*)  http://example.com/something/maybesomethingelse/-%1

我没有测试它,但我认为它有效!如果没有,请告诉我!