Правильный способ перенаправления 301 с помощью Nginx

#php #http #redirect #nginx #http-status-code-301

#php #http #перенаправление #nginx #http-status-code-301

Вопрос:

Я использую Nginx в качестве веб-сервера. Мне нужно перенаправить URL-адрес 301 по следующему шаблону

 adomain.com/detail.php?name=eC-F_VZ2T1c
  

в

 adomain.com/watch?v=eC-F_VZ2T1c
  

Попробовал этот фрагмент

 location /detail.php {
    if ($arg_name) {
        return 301 http://adomain.com/watch?v=$arg_name;
    }
}
  

Безуспешно!

Что я делаю не так?

Ответ №1:

Возможно, вам повезет rewrite больше — попробуйте заменить строку возврата на следующую:

 rewrite ^ http://adomain.com/watch?v=$arg_name permanent;
  

permanent Флаг указывает на постоянное перенаправление 301.

Согласно документации, найденной по адресу:

http://nginx.org/en/docs/http/ngx_http_rewrite_module.html

Комментарии:

1. invalid parameter "permament"

2. хм, какую версию и установочный пакет nginx вы используете?

3. Я думаю, что вместо этого они могут использовать mgimx