RewriteRule - 两个参数,但最后一个参数是可选的

发布于 2024-11-04 01:13:06 字数 747 浏览 1 评论 0原文

我无法重写以包含两个参数,但最后一个参数是可选的,例如:

http://www.mywebsite.com/friends/jamie -(正斜杠也应该是可选的)。这应该与此相同:

http://www.mywebsite.com/friends.php?name=jamie

当包含第二个参数时

http://www.mywebsite.com/friends/jamie/30 -应该与此相同:

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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

寒冷纷飞旳雪 2024-11-11 01:13:06

尝试使用此规则:

RewriteRule ^friends/([^/]*)/?(.*)$ friends.php?name=$1&page=$2

希望有帮助

Try using this rule instead:

RewriteRule ^friends/([^/]*)/?(.*)$ friends.php?name=$1&page=$2

Hope that helps

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文