2013-08-04 49 views
0

我很难尝试通过$ _GET变量(event)event_id。该网站是用PHP和Smarty模板引擎构建的,mod_rewrite工作正常。

工作链路/查询字符串:

/event.php?event=2

重写:

/事件/ 2

htacces:

RewriteRule ^/events /?$ /event.php?event=$ 1 [QSA]

当观看的页面/事件/ 2它正在寻找模板2.inc.htmlevent.php已经指定模板作为event.inc.html它应该显示来自DB的事件细节。

回答

0

在htaccess中,前导前缀(包括前缀的尾部斜线)在比较之前被剥离,因此^/events永远不会匹配。尝试删除第一个/在RewriteRule中。

还放下第一个$,这里的输入(rewritelog会显示你)是/ events/2,因此从来没有匹配事件/?$。也许你的意思是^ events /(\ d +),所以你可以使用event = $ 1的替换。

+0

感谢您的快速响应。我已将其更改为** RewriteRule^events /?$ event.php?event = $ 1 [QSA] **,但它仍在查找1.inc.html – Evzman

+0

同时删除第一个$,这里的输入(rewritelog将显示你)是/ events/2,所以事件/?$永远不会匹配。也许你的意思是^ events /(\ d +),所以你可以使用event = $ 1的替换。 – covener

+0

更新为** RewriteRule^events /(\ d +)\t event.php?event = $ 1 [QSA] **是吗?但仍然在寻找模板2.inc.html(对不起,我之前输入1错误)... *警告:Smarty错误:无法读取资源:“2.inc.html”in ... * – Evzman