2013-04-25 49 views
0

我已经生成一个.htaccess文件使用主机服务301永久重定向从一个空的子域名到文件夹中的新子域名页面。如何在显示旧地址的同时重定向域名?

sejur-avion.old-domain.com - >subdomain.new-domain.com/agent/5049/sejur-avion

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^sejur\-avion\.old\-domain\.com$ [OR] 
RewriteCond %{HTTP_HOST} ^www\.sejur\-avion\.old\-domain\.com$ 
RewriteRule ^(.*)$ "http\:\/\/subdomain\.new\-domain\.com\/agent\/5049\/sejur\-avion\/$1" [R=301,L] 

什么,我需要做的是隐藏地址栏“新域”的名字,如果可能的话显示旧域的名称来代替。

所以我需要的是subdomain.new-domain.com/agent/5049/sejur-avion显示为subdomain.old-domain.com/agent/5049/sejur-avion

我听说有,我可以使用一个ServerAlias功能? 请帮助

回答

0

您可以使用国防部重写的P标志,该标志将请求发送到通过mod_proxy的被反向代理:

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^sejur\-avion\.old\-domain\.com$ [OR] 
RewriteCond %{HTTP_HOST} ^www\.sejur\-avion\.old\-domain\.com$ 
RewriteRule ^(.*)$ "http\:\/\/subdomain\.new\-domain\.com\/agent\/5049\/sejur\-avion\/$1" [P,L] 

这(实质上是一个带有P替换R=301),但是,需要你已经加载了mod_proxy,但并非总是如此。如果该模块未加载,则不太可能出现错误(只是没有任何反应)。

+0

尝试过但它不起作用。我可以在哪里加载mod_proxy? 我使用的是hostgator。 – zmin 2013-04-25 12:19:13