【问题标题】:htaccess mod Rewrite Rule - optional parametershtaccess mod 重写规则 - 可选参数
【发布时间】:2013-07-09 11:31:50
【问题描述】:

我想重写以下内容:

  1. http://www.mywebsite/address/12345/http://www.mywebsite/address/?param1=12345
  2. http://www.mywebsite/address/12345/12http://www.mywebsite/address/?param1=12345&param2=12
  3. http://www.mywebsite/address/12345/?{otherparam}=1 到 http://www.mywebsite/address/?param1=12345&{otherparam}=1

以下是我在 .htaccess 文件中的内容。我的前两个工作正常,但第三个却在苦苦挣扎。我需要第三个来传递 param1 并传递其他可选参数。有人可以帮忙吗?

RewriteRule ^address/([^/\.]+)/?$ address/?param1=$1  [NC]
RewriteRule ^address/([^/]+)/([^/\.]+)/?$ address/?param1=$1&param2=$2  [NC]

【问题讨论】:

    标签: .htaccess mod-rewrite


    【解决方案1】:

    您正在寻找QSA 标志,它将任何现有的查询字符串附加到规则目标中新建的查询字符串:

    RewriteRule ^address/([^/\.]+)/?$ address/?param1=$1  [NC,QSA,L]
    RewriteRule ^address/([^/]+)/([^/\.]+)/?$ address/?param1=$1&param2=$2  [NC,QSA,L]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-27
      相关资源
      最近更新 更多