【问题标题】:RewriteRule - two parameters but last parameter is optionalRewriteRule - 两个参数,但最后一个参数是可选的
【发布时间】:2023-04-08 17:06:01
【问题描述】:

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

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

因为我得到了这个:The requested URL /friends/jamie was not found on this server.,但如果我为第二个参数包含页码,那么基本上第二个参数应该是可选的。

【问题讨论】:

    标签: .htaccess mod-rewrite url-parameters


    【解决方案1】:

    尝试改用此规则:

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

    希望有帮助

    【讨论】:

    • 5 年后。非常感谢:)
    • 7 年后。感谢alota ;)
    • 8 年后。感谢alota :))
    • 9 年后。感谢alota :)
    • 来自宇宙的热寂。非常感谢:)
    猜你喜欢
    • 2017-01-28
    • 2017-10-21
    • 1970-01-01
    • 1970-01-01
    • 2017-10-16
    • 2015-01-06
    • 1970-01-01
    • 1970-01-01
    • 2013-10-16
    相关资源
    最近更新 更多