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

Перенаправление вебхука с помощью nginx

Я меняю доменное имя своего приложения со old.com на new.com

Мое приложение подключено к внешним API-интерфейсам, которые отправляют данные через веб-перехватчики, и я хотел бы перенаправить веб-перехватчики, отправленные на старый URL-адрес, чтобы они попадали на новый URL-адрес и обрабатывались.

Я пробовал просто переписать

server {
  server_name old.com;
  listen 443 ssl;
  rewrite ^       https://new.com$request_uri;

Я вижу, что это вызывает перенаправление 302, но, похоже, это не помогает ..

Я пробовал с proxy_pass

server {
  server_name old.com;
  listen 443 ssl;

  location /webHook {
    proxy_pass https://new.com/webHook;
  }

  rewrite ^       https://new.com$request_uri;

Тот же результат .. Я вижу 302 редирект в журналах, но веб-перехватчик никогда не попадает на новый URL и не обрабатывается ..

Есть идеи, как этого добиться?

Поскольку веб-перехватчики не получат перенаправление (и, следовательно, единственный способ для них поглотить домен вашего нового приложения - это внести изменения вручную), зачем упускать тривиальное решение?

Просто добавьте old.com под server где у тебя есть new.com:

server_name new.com old.com;

В rewrite директивы в server блока, которые не находятся внутри location блок выполняются первыми (см. ng_http_rewrite_module документация).

Так что удалите или прокомментируйте rewrite директива и proxy_pass директива будет выполнена.