所以我有url localhost/parent/admin/news/edit/2,我想重写它以运行localhost/parent/admin/news/edit.php?id=2。我看过的大多数RewriteRule示例(例如这一个)都使用以下方法来捕捉域后的重写:
RewriteRule ^products/([0-9]+)/?$ show_a_product.php?product_id=$1 [NC,L]然而,据我所知,^表示字符串的开始,而且由于我的前向远超过开始,它将无法工作。因此,我想出以下几点:
RewriteRule edit/([0-9]+)$ edit.php?id=$1 [NC,L]从逻辑上讲,我觉得它应该可以工作,我使用RegExr试验来试用它,该服务也同意。然而,当我添加一个R标志进行转发时,规则似乎是将页面指向localhost/C:/xampp/htdocs/parent/edit.php?id=2,从中我可以推测出两个问题:
news/部分全部剪掉了。希望有人能帮我解决这个问题,因为我花了几个小时在不同的组合中玩了几个小时,但没有效果。
编辑:我应该补充一点,我想捕捉编辑/#的原因是因为有一个编辑/#的多个部分,我想用一个规则来捕获它们,而不是为每个部分编写多个特定的规则。
发布于 2012-03-27 07:31:48
下面是应该起作用的东西:
RewriteRule /parent/admin/news/edit/([0-9]+)$ /parent/admin/news/edit.php?id=$1 [NC,QSA,L].https://stackoverflow.com/questions/9877627
复制相似问题