.htaccess路由奇怪的行为

时间:2017-03-15 14:39:51

标签: apache .htaccess

使用.htaccess重写网址有点困难

我正在尝试将网页https://example.com/foo/指向https://example.com/bar/而不更改网址(意味着该网址应保留:https://example.com/foo/

我的htaccess文件如下所示:

RewriteEngine on
RewriteRule ^foo(/.*|)$ /bar$1 [PT,L,NC]

这似乎适用于所有情况,只有一个:当我访问页面https://example.com/foo时(我会自动重定向到https://example.com/foo/,并看到页面内容https://example.com/bar这个可以正常工作)然后当我从网址的末尾删除“/”时(我正在访问的网址再次为https://example.com/foo)我的网址此时更改为https://example.com/bar/

htaccess文件没有写入任何其他内容。

编辑:我还注意到重写规则在重定向到https时应该正常工作。 (这就是我输入example.com/foo时它的工作原理)

1 个答案:

答案 0 :(得分:2)

小修正

RewriteEngine on
RewriteRule ^foo(.*)$ bar/$1 [L]

应该解决问题