我在写一个脚本时遇到了一些问题。Apache重写规则不适用于特定的前缀
我有那些类型的网址:
forum.php?f=topic&g=$1&id=$2&alias=$3
forum.php?f=group&g=$1
forum.php
我需要重写那些有:
/forum/group/id-alias_topic > forum.php?f=topic&g=[GROUP]&id=[ID]&alias=[ALIAS_TOPIC]
/forum/group > forum.php?f=group&g=[GROUP]
/forum > forum.php
我尝试:
RewriteRule ^forum/([\w'-]+)/([0-9]+)-([\w'-]+) forum.php?f=topic&g=$1&id=$2&alias=$3
RewriteRule ^forum/([\w'-]+) forum.php?f=group&g=$1
RewriteRule ^forum/ forum.php
但它不工作。这表明我只forum.php
开始/forum
每个网址都显示我的/forum.php
例如,forum.php
提供将显示文本“主页面”的默认页。
forum.php?f=topic&g=[GROUP]&id=[ID]&alias=[ALIAS_TOPIC]
应该告诉我 “群组+ ID + ALIAS_TOPIC”
但是如果我访问/forum/android/1-first_topic
它为我 “主页面”
如果我更换^forum
,例如^foru
,它的工作原理。 我已经清理了我的浏览器缓存并重新启动了apache,但它仍然不起作用。 也与其他浏览器的问题是一样的。 在我的/ var/WWW也有一些文件和目录:
administrator.php assets cache forum_functions.php forum.php functions.php global.php index.php media notfound.php OLD pwdgen.php robots.txt rss.php simple_html_dom.php store.php template v.php
你有一些建议吗?
Rewrite.log:http://pastebin.com/MeapYeBA
你的代码不工作...我认为我的服务器存在一些问题,如果我删除.htaccess,如果我访问/论坛/它的工作,但如果我/forum.php isn没有.htaccess如何进入/论坛/但进入/? – 2013-02-15 20:30:39
我的error.log只声明有关未在PHP脚本中定义的PHP变量的通知。没有关于.htaccess的任何信息。 我试过你的最后一个代码,但没有成功。我在文档根目录中添加了关于文件和文件夹的信息。 – 2013-02-15 20:37:23
最后,这个.htaccess文件属于'/',不在任何子目录中。 – 2013-02-15 20:40:18