htaccess重写基本网址

时间:2010-10-20 21:31:11

标签: apache .htaccess mod-rewrite

任何有htaccess和mod重写的人都很好 - 我需要你的帮助!

我需要重写网址的基础部分。

例如,http://domain1.com的所有请求都需要转到http://domain2.com

请求通常采用以下形式:

http://domain1.com/main/test?q=1

然后我需要转到http://domain2.com/main/test?q=2

请求帮助!

提前致谢

2 个答案:

答案 0 :(得分:1)

在.htaccess文件中尝试此操作:

Options +FollowSymLinks
RewriteEngine on

# redirect for http
RewriteCond %{HTTP_HOST} ^domain1\.com$ [NC]  
RewriteCond %{SERVER_PORT} =80
RewriteRule ^/?(.*)$ http://domain2.com/$1 [R=301,QSA,L,NE]

# redirect for https
RewriteCond %{HTTP_HOST} ^domain1\.com$ [NC]  
RewriteCond %{SERVER_PORT} =443
RewriteRule ^/?(.*)$ https://domain2.com/$1 [R=301,QSA,L,NE]

R=301将重定向,状态为301 L将制定最后一条规则 NE表示没有转义查询字符串
QSA会附加您现有的查询参数

$1是你的REQUEST_URI

答案 1 :(得分:0)

跨多个域重写网址?考虑到Apache的请求处理算法,我不完全确定这可行。您正在寻找重定向,而不是重写