.htaccess:重定向而不更改URL

时间:2013-02-15 13:37:40

标签: regex .htaccess

我希望将网址重定向到同一网域上的其他网页,但浏览器不会更改网址。因此,页面www.mydomain.co.uk/tour/应指向www.mydomain.co.uk/,但不得更改。

我在Stackoverflow上看了很多类似的问题但是所有解决方案似乎都改变了我的URL。

CODE:

RewriteEngine On
Options +FollowSymLinks
RewriteCond %{REQUEST_URI} ^/tour
RewriteRule ^(.*)$ http://www.mydomain.co.uk/ [L] 

3 个答案:

答案 0 :(得分:21)

由于您在重写规则中提供了完整的URL,因此会自动将其视为重定向。用斜杠替换完整的URL,它应该可以工作,即:

RewriteCond %{REQUEST_URI} ^/tour
RewriteRule ^(.*)$ / [P] 

您甚至可以将其缩短为:

RewriteEngine on
RewriteRule ^/?tour.* / [P]

答案 1 :(得分:0)

1-使用[P]代替[L] 2-在第二行末尾使用$ s以使一组URL重定向并在其末尾删除/。 代码看起来像这样:

RewriteCond %{REQUEST_URI} ^/tour
RewriteRule ^(.*)$ /$1 [P] 

用于处理文件夹之旅的索引页以外的内容。

答案 2 :(得分:-5)

尝试将[L]改为[P],我认为它会起作用。