htaccess重写,当我在最后添加一个/时,url不起作用

时间:2012-01-22 00:34:07

标签: .htaccess mod-rewrite rewrite slash

我有一个问题在我看来很简单,但我是htaccess的新手,无法找到解决方案。

我的htaccess(根映射)中有以下行

RewriteRule ^page1/([a-zA-Z0-9_-]+)/$ page1.php?name=$1
RewriteRule ^page1/([a-zA-Z0-9_-]+)$ page1.php?name=$1

当我输入以下网址时,它可以正常运行

www.myexample.com/page1/variable

当我在最后添加一个/时会发生奇怪的事情。然后页面无法从URL中获取GET值。

感谢您的时间和帮助!

1 个答案:

答案 0 :(得分:0)

摆脱第一条规则的结尾/ $符号

RewriteRule ^page1/([a-zA-Z0-9_-]+) page1.php?name=$1

或者您可以继续捕获数据

RewriteRule ^page1/([a-zA-Z0-9_-]+)/(.*)$ page1.php?name=$1

最终如果你想用“/”作为分隔符继续捕获更多数据,我建议你做

RewriteRule ^page1/(.*)$ page1.php?url=$1

然后使用服务器端脚本来确定要执行的操作。