URL重定向到子域而不更改地址中的URL

时间:2013-04-05 08:11:25

标签: url-redirection

我是Linux的新手,想要使用.htaccess或proxy进行URL重定向,使用apache2保持URL不变。

现在,我想将主域http://example.com/test重定向到我的子域http://test.example.com,而不更改地址栏中的网址。

请帮助我用.htaccess或代理或其他一些方式给我一些指导。

1 个答案:

答案 0 :(得分:0)

如果您不希望更改URL,则需要在两个虚拟主机/域之间设置反向代理,或者如果exam​​ple.com只是一个别名,相同的IP并从同一个Apache虚拟主机提供服务,你可以使用内部重写。更多信息HERE

你也可以试试这个。更多infor go HERE

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.com$ [NC]
RewriteRule ^/?(index.\php)?$ /category [L]

这仅适用于http://domain.com/http://domain.com/index.php的请求,您可以在http://domain.com/category处获得内容,而无需更改地址栏中的网址。如果你不需要它,你甚至可能会丢失RewriteCond %{HTTP_HOST} ^(www\.)?domain\.com$ [NC]行。

还有一个有用的资源here

RewriteEngine on 
RewriteBase / 
######## example.com ######## 
RewriteCond %{HTTP_HOST} ^.*example.com$ [NC] 
RewriteCond /www/quux-foo.com/www/root/v1%{REQUEST_URI} -d 
RewriteRule ^(.*[^/])$ %{REQUEST_FILENAME}/ [L]

RewriteCond %{HTTP_HOST} ^.*quux-foo.com$ [NC] 
RewriteCond %{REQUEST_URI} ^/v1/ 
RewriteRule ^(.*)$ - [F]

RewriteCond %{HTTP_HOST} ^.*example.com$ [NC] 
RewriteCond /www/quux-foo.com/www/root/v1%{REQUEST_URI} -f [OR] 
RewriteCond /www/quux-foo.com/www/root/v1%{REQUEST_URI} -d 
RewriteRule ^(.*)$ v1/$1 [L]

RewriteCond %{HTTP_HOST} ^.*example.com$ [NC] 
RewriteCond %{REQUEST_URI} !^/v1/ 
RewriteRule ^(.*)$ v1/index.php [L] 
######## example.com ########