shuaijinchao edited a comment on issue #6547:
URL: https://github.com/apache/apisix/issues/6547#issuecomment-1064995944


   @Horus-K  `regex_uri ` not support nginx variables, please look here: 
https://github.com/apache/apisix/blob/b16c86e24377d19215286c57bff0813a2cfd6c8c/apisix/plugins/redirect.lua#L105-L112
   
   about `append_query_string`  descirbe:
   Redirect query parameters set in `regex_uri` are explicit values rather than 
variables, enabling `append_query_string` at this time will append the set 
value to the URL.
   
   refer to this case:
   
   ### Set Route
   ```bash
   curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: 
edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '
   {
       "uri":"/foo/bar/*",
       "plugins":{
           "redirect":{
               "regex_uri": [
                   "(.*)/bar(.*)",
                   "https://www.apache.org/apisix$2?t=gateway";
               ],
               "append_query_string": true
           }
       },
       "upstream":{
           "type":"roundrobin",
           "nodes":{
               "127.0.0.1:1980":1
           }
       }
   }'
   ```
   ### Test Route
   ```bash
   $ curl "http://127.0.0.1:9080/foo/bar/hello?q=hello&a=world"; -I
   HTTP/1.1 302 Moved Temporarily
   Date: Fri, 11 Mar 2022 09:44:01 GMT
   Content-Type: text/html
   Content-Length: 110
   Connection: keep-alive
   Location: https://www.apache.org/apisix/hello?t=gateway&q=hello&a=world
   Server: APISIX/2.12.0
   ```
   
   cc @spacewander 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to