Назад | Перейти на главную страницу

Правило перенаправления Nginx на другой URL-адрес на основе запроса

У нас есть установка wordpress, и нам нужно перенаправить ссылку на утерянный пароль на другой URL-адрес, для этого мы пытаемся настроить правило перенаправления, но это не работает. Кто-нибудь может нам помочь.

location / {
proxy_pass      http://localhost;
     }

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

Но URL-адрес входа также (wp-login.php? Action = login) перенаправляет на recovery.geo.com

Нам нужно перенаправить только url wp-login.php? действие = потерянный пароль на другой и все другие URL, включая wp-login.php? действие = логин нужно прокси

Может ли кто-нибудь помочь нам с правильной конфигурацией.

Спасибо

Не используйте location для этого вообще. Он не соответствует аргументам строки запроса.

Вместо этого просто проверьте аргумент и запросите URI напрямую. Например:

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

    # everything else...
}