RewriteRule - 两个参数,但最后一个参数是可选的
我无法重写以包含两个参数,但最后一个参数是可选的,例如:
http://www.mywebsite.com/friends/jamie -(正斜杠也应该是可选的)。这应该与此相同:
http://www.mywebsite.com/friends.php?name=jamie
当包含第二个参数时
http://www.mywebsite.com/friends.php?name=jamie&page=30
此规则不起作用:
RewriteRule ^friends/(.*)/(.*)$ friends.php?name=$1&page=$2
因为我得到:在此服务器上找不到请求的 URL /friends/jamie。
但如果我包含第二个参数的页码,则有效,所以基本上第二个参数应该是可选的。
I cannot rewrite to include two parameters but the last parameter is optional, so for example:
http://www.mywebsite.com/friends/jamie - (the forward slash should be optional too). Which should be the same as this:
http://www.mywebsite.com/friends.php?name=jamie
When including a second parameter
http://www.mywebsite.com/friends/jamie/30 - Should be the same as this:
http://www.mywebsite.com/friends.php?name=jamie&page=30
This rule does not work:
RewriteRule ^friends/(.*)/(.*)$ friends.php?name=$1&page=$2
Because I get this: The requested URL /friends/jamie was not found on this server.
but works if I include a page number for the second parameter, so basically the second parameter should be optional.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试使用此规则:
希望有帮助
Try using this rule instead:
Hope that helps