子域名RewriteRule将URL Params传输到其他目录?

时间:2011-11-20 16:26:07

标签: apache .htaccess mod-rewrite alias

我的问题:我希望有一个rewriteRule,允许我将参数转发到我服务器上的另一个目录。我调用了我的页面的子域,这个子域应该指向我的根页面的“普通”目录。另外,该规则应该为将要调用的所有URL添加一个参数。

示例:

Root-Page: http://www.example.com -> directory on the server /srv/www/vhosts/example.com/httpdocs/

Subdomain: http://fb.example.come 

现在,Root-Page和Subdomain应指向同一目录:

子域名 - >服务器上的目录/srv/www/vhosts/example.com/httpdocs /

两个域之间的区别是应该添加到每个URL调用的参数:

User-Call: http://fb.example.com/index.php
--> add a fb=1 param
Intern -> http://fb.example.com/index.php?fb=1

User-Call: http://fb.example.com/show.php?param=1&test=1
--> add a fb=1 param
Intern -> http://fb.example.com/show.php?fb=1&param=1&test=1

URL中应始终有一个名为“fb = 1”的参数。

我怎么能意识到这一点?

1 个答案:

答案 0 :(得分:0)

RewriteCond %{QUERY_STRING} !fb=1
RewriteCond %{HTTP_HOST} ^fb\.
RewriteRule (.*) $1?fb=1 [QSA]

但我会在你的php中放一些代码来检测fb.example.com域。更清洁

if($_SERVER["HTTP_HOST"]=="fb.example.com")
  $fb = true;