【问题标题】:rewrite multiple parameters .htaccess重写多个参数.htaccess
【发布时间】:2011-02-13 07:10:59
【问题描述】:

我需要将 www.sample.com/user/john/ 重写为 www.sample.com/user/?u=john

此代码仅在我省略尾随/“www.sample.com/user/john”时才有效,我如何让它像“www.sample.com/user/john/”一样工作?

重写规则 ^([A-Za-z0-9_]+)$ index.cfm?u=$1 [L]

现在我需要它进一步发挥作用

www.sample.com/user/john/23564/ 改写为“www.sample.com/user/?u=john&i=23564”

即使没有/23564/,“www.sample.com/user/john”仍应使用单词

谢谢

【问题讨论】:

    标签: regex .htaccess mod-rewrite rewrite


    【解决方案1】:

    添加可选的斜杠(以及 URL 的“user/”部分):

    RewriteRule ^user/([A-Za-z0-9_]+)/?$ index.cfm?u=$1 [L]
    

    还有下一步:

    RewriteRule ^user/([A-Za-z0-9_]+)(/([0-9]+))?/?$ index.cfm?u=$1&i=$3 [L]
    

    【讨论】:

    • 你能提供更多细节吗??
    • 我刚刚添加了一个斜线,后跟一个问号以使所述斜线可选。括号之间的段可以用美元符号引用,第一个是 $1,第二个是 $2 等等,我添加了第二个(可选)段,它接受斜线后跟一个数字(第三个只是指到号码)。这有帮助吗?
    猜你喜欢
    • 2020-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-05
    • 2013-12-26
    • 2016-02-27
    • 1970-01-01
    相关资源
    最近更新 更多