帮助htaccess重定向中的变量

时间:2010-12-01 08:12:40

标签: .htaccess

我想这样做,重定向:

的http:// anySubdomain(通配符) .mydomain.com来/

anysubdomain(通配符) .mydomain.com来/使page2.php

我试过这个:

  RewriteCond %{HTTP_HOST} ^(.*)\.mydomain.com$ [OR]
  RewriteRule ^/?$ "http\:\/\/$1\.mydomain\.com\/page2\.php" [R=301,L]

但它不起作用,rewriteCond部分运行良好,因为,任何子域都被重定向。

但它达到:“。mydomain.com / page2.php”

你能帮帮我吗?谢谢!

1 个答案:

答案 0 :(得分:0)

你的重写有一些问题:

  1. [OR]使其适用于所有内容
  2. 您不需要在规则上逃避如此多的字符。
  3. 需要使用%1
  4. 传递主机名变量
  5. 它会创建一个无限循环,因为它也会尝试将page2.php重定向回自身。
  6. 应该这样做:

    RewriteCond %{REQUEST_FILENAME} !.*page2.php$
    RewriteCond %{HTTP_HOST} ^(.*)\.mydomain.com$
    RewriteRule ^(.*)$ http://%1.mydomain.com/page2.php [R=301,L]