【问题标题】:.htaccess RewriteRule is acting strange.htaccess RewriteRule 表现得很奇怪
【发布时间】:2026-01-01 11:40:01
【问题描述】:

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

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 文件位于文件夹中,而不是根目录中。

【问题讨论】:

  • 不。还是不行!

标签: .htaccess mod-rewrite


【解决方案1】:

这对你有用。

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

【讨论】:

  • 谢谢,但遗憾的是没有。我已经尝试了几乎所有的组合。出于某种原因,它根本不起作用。
【解决方案2】:

所以,由于我无法让它正常工作,我接受了挑战并开始阅读有关 mod_rewrite 的内容,这导致了解决方案:

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

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

【讨论】: