как работает возврат и перезапись?

location /movies {
  return 301 nice.com
}
location /foo {
  rewrite /foo/(.*) /$1;
}

Я получаю доступ к http: // localhost / foo / movies . Происходит изменение URL-адреса на http: //localhost/foo/nice.com . Я хочу знать почему, потому что вот что я думаю.

при доступе к http: // localhost / foo / movies он переписывается как http: // localhost / movies внутренне. затем он начинает обработку сверху вниз и находит конечную точку / movies. когда он находит, он должен перенаправить на сайт nice.com. но меняется только последняя часть.

1
задан 12 April 2019 в 17:38
1 ответ

Ваш оператор return , вероятно, интерпретируется как путь относительно исходного URI.

Вам необходимо использовать Синтаксис URL для указания внешнего сайта, например:

return 301 https://example.com/;

Подробнее см. этот документ .

1
ответ дан 3 December 2019 в 23:05

Теги

Похожие вопросы