htaccess重定向值和丢弃密钥

时间:2019-05-01 10:22:20

标签: apache .htaccess redirect

我要执行Apache .htaccess重定向,如下所示:

https://domain1.com/app/index.php?ref=1234

https://domain2.com/ref/1234

如何编写此规则?看来我想放弃ref=参数,然后动态使用该值(在本示例中为1234)。

URL数以千计,因此需要动态获取值(1234)。

我已阅读HTACCESS Redirect ID Valuehttps://perishablepress.com/redirect-query-string-htaccess/,但似乎无法正常工作。

我已经在.htaccess中为domain1.com进行了尝试:

RewriteRule ^index.php?ref=/([0-9]+)/ https://domain2.com/ref/$1 [L,NC,QSA]

1 个答案:

答案 0 :(得分:0)

RewriteRule 模式最初将与主机名和端口之后,查询字符串之前的URL部分匹配。如果要与主机名,端口或查询字符串匹配,请使用RewriteCond%{HTTP_HOST}%{SERVER_PORT}%{QUERY_STRING}变量。

这应该有效:

RewriteCond %{QUERY_STRING} ref=([0-9]+)
RewriteRule ^index.php https://domain2.com/ref/%1 [R,L,NC,QSD]