Nignx根据查询将规则redirect到不同的url

我们有一个WordPress的安装,需要redirect丢失的密码链接到另一个不同的url,我们试图设置redirect规则,但这是行不通的。 任何人都可以请帮助我们。

location / { proxy_pass http://localhost; } location wp-login.php?action=lostpassword rewrite ^(.*) http://recover.geo.com $1 permanent; } 

但是loginurl(wp-login.php?action = login)也会redirect到recover.geo.com

我们只需要redirecturl wp-login.php?action = lostpassword到其他所有的url,包括wp-login.php?action = login需要proxypass

任何人都可以请帮助我们正确的configuration。

谢谢

根本不要使用这个location 。 它在查询string参数上不匹配。

而是直接检查参数和请求URI。 例如:

 location / { if ($arg_action = "lostpassword") { rewrite /wp-login.php http://recover.geo.com/wp-login.php?action=lostpassword permanent; } # everything else... }