Mod rewrite 帮助修改

Mod rewrite 帮助修改,mod-rewrite,url-rewriting,Mod Rewrite,Url Rewriting,我正在尝试让mod_rewrite使用以下URL: /events.php?view=details&id=$var /events.php?view=edit&id=$var 显然,我的目标是让/events/details/$var和/events/edit/$var成为我的实际URL,而$var是唯一的ID My.htaccess文件 RewriteEngine On # redirect 301 /events.php http://www.google.com #

我正在尝试让mod_rewrite使用以下URL:

/events.php?view=details&id=$var
/events.php?view=edit&id=$var
显然,我的目标是让/events/details/$var/events/edit/$var成为我的实际URL,而$var是唯一的ID

My.htaccess文件

RewriteEngine On

# redirect 301 /events.php http://www.google.com
# If the rule above is active, it does redirect to google.com, 
# so .htaccess is working

RewriteRule ^events/([^/]*)/([^/]*)\$ /events.php?view=$1&id=$2 [L]
当前,当我转到
/events/details/$var
时,它会显示
/events.php
,但不会拾取传入的变量

任何帮助都将不胜感激

更新:我删除了OverZeouse提到的.php/events/details/$var仍然显示/events

// From events.php
echo $_REQUEST['view']; //returns nothing
更新2: 我启用了mod_重写日志(第5级),并得到以下输出:(我去掉了IP、日期、我的域详细信息等)


为什么结尾有
\.php
?是否希望URL为
/events/details/123.php
?因为你的例子不是这样的

我认为您希望您的重写规则如下所示:

RewriteEngine On
RewriteRule ^events/([^/]*)/([^/]*)$ /events.php?view=$1&id=$2 [L]

哎呀,那本不该在那儿的。我一直在玩一个在线htaccess生成器,那一定是偷偷进来的。即使更新了代码,它仍然不会返回传入的变量。谢谢你的回复!好的,下一步是启用mod_重写日志,这将允许您查看重写是否正在发生:好主意。我启用了它,并在上面添加了日志输出。谢谢你的帮助!我想您访问的是
/details/35
,而不是
/events/details/35
-请看,上面写着
传递/var/www/webroot/details
,这意味着它没有应用任何模式。在您添加此内容时,我就发布了有关多视图的内容。感谢您的帮助并将我指向日志。问题已解决-默认情况下[多视图已启用][1]。[1]:
RewriteEngine On
RewriteRule ^events/([^/]*)/([^/]*)$ /events.php?view=$1&id=$2 [L]