mod_rewrite不起作用

时间:2012-11-19 20:11:07

标签: .htaccess mod-rewrite

我刚开始使用.htaccess而我在使用mod_rewrite apache时遇到了麻烦。

所以基本上我有一个URL。 www.website.com/test/index.php

我希望它更短www.website.com/t/index.php

因此,在我的.htaccess文件中,我有以下三行:

RewriteEngine On
RewriteBase /
RewriteRule ^test/(.*) t/$1 [R=301,L]

这非常适合引导我访问www.website.com/t/index.php,但index.php页面不会加载,只会显示404 error。任何帮助都会非常感激。

1 个答案:

答案 0 :(得分:0)

您需要先缩短网址:

RewriteEngine On
RewriteRule ^test/(.*) t/$1 [R=301,L]

...然后确保新的(和不存在的)URL将被处理:

RewriteRule ^t/(.*) test/$1 [L]

第一次重写是“外部”,因此它显示在客户端浏览器地址栏中,但第二次是“内部”,因此apache仅显示来自新URL的结果而不是旧URL的任何更改客户致辞吧。