我是Linux的新手,想要使用.htaccess或proxy进行URL重定向,使用apache2保持URL不变。
现在,我想将主域http://example.com/test重定向到我的子域http://test.example.com,而不更改地址栏中的网址。
请帮助我用.htaccess或代理或其他一些方式给我一些指导。
答案 0 :(得分:0)
如果您不希望更改URL,则需要在两个虚拟主机/域之间设置反向代理,或者如果example.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 ########