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

URL перенаправления Nginx с параметрами

Я безуспешно искал по такому количеству тем, может, вы мне поможете.

Я пытаюсь перенаправить эту ссылку https://www.example.com/page/5/?s=gluten к https://www.example.com/gluten_specificarticle

Я пытался использовать решение для карт, но оно не работает

map $arg_s $mypage {
    gluten /specificlink;
}

В ссылке есть 2 переменные: «5» для страницы и «? S = глютен» для аргумента поиска.

Спасибо за любую помощь

В $request_uri переменная содержит весь URI, включая строку запроса. Вам нужно будет использовать if блок для проверки условия.

Всего для одного перенаправления вы можете использовать:

if ($request_uri = "/page/5/?s=gluten") { 
    return 301 /gluten_specificarticle; 
}

Если у вас есть несколько перенаправлений, используйте map:

map $request_uri $redirect {
    /page/5/?s=gluten    /gluten_specificarticle; 
}
server {
    ...
    if ($redirect) {
        return 301 $redirect;
    }
    ...
}

Видеть этот документ для подробностей. Видеть это предупреждение по использованию if.