.htaccess RewriteRule表现得很奇怪

时间:2012-11-23 13:41:48

标签: .htaccess mod-rewrite

我有一个网页,网址如下:

http://www.mydomain.com/folder/index.php?title=The_title

唯一的问题是我希望它看起来像其中之一:

http://www.mydomain.com/folder/The_title

http://www.mydomain.com/folder/The_title.php

我搜索了大部分内容并找到了一个“有效”的解决方案:

RewriteEngine on
RewriteRule ^([^/]*)\.html$ /folder/index.php?title=$1 [L]

它应该做它应该做的事,除了结尾必须是“.html”(或“.kl”,如果你愿意)。此解决方案不接受“.php”,这会给我一个“500内部服务器错误”。如果我在没有扩展名的情况下尝试它,也会发生同样的事情。

修改 忘记提及.htaccess文件位于文件夹而不是根目录。

2 个答案:

答案 0 :(得分:0)

这对你有用。

RewriteEngine On
RewriteRule ^folder/([^/]*)\.php$ /folder/index.php?title=$1 [L]

答案 1 :(得分:0)

所以,既然我无法让它正常工作,我就接受了挑战并开始阅读mod_rewrite,这导致了解决方案:

RewriteRule ^(\w+)/?$ index.php?title=$1 [L]

如果有其他人遇到麻烦我会推荐这些网站:
more .htaccess tips and tricks..
An In Depth Guide to mod_rewrite for Apache