0

我想重写以下内容:

  1. http://www.mywebsite/address/12345/http://www.mywebsite/address/?param1=12345
  2. http://www.mywebsite/address/12345/12http://www.mywebsite/address/?param1=12345¶m2=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]
4

1 回答 1

2

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

RewriteRule ^address/([^/\.]+)/?$ address/?param1=$1  [NC,QSA,L]
RewriteRule ^address/([^/]+)/([^/\.]+)/?$ address/?param1=$1&param2=$2  [NC,QSA,L]
于 2013-07-09T11:37:26.477 回答