Nginx Reverse Proxy Redirect Исходный веб-сайт

Nginx Reverse Proxy Redirect Исходный веб-сайт

Почему при нажатии кнопки «Войти» или «Выйти» я всегда перенаправляюсь на исходный сайт/прокси-сайт?

server {
    listen 80;
    server_name abcd.com;
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl;
    listen [::]:443 ssl;

    ssl_certificate /etc/ssl/doremi/abcd.crt;
    ssl_certificate_key /etc/ssl/doremi/private.key;

    server_name abcd.com;

    location / {
    proxy_pass http://xyz.vip;
    proxy_set_header Accept-Encoding "";
    sub_filter 'http://xyz.vip' 'https://abcd.com';
    sub_filter 'http://xyz.vip/dashboard' 'https://abcd.com/dashboard';
    sub_filter_once off;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Всякий раз, когда я нажимаю кнопку входа на abcd.com, я всегда попадаю на xyz.vip, спасибо за помощь.


Итак, я попробовал curl abcd.com и вот какой результат ниже, все еще не могу понять, как сделать так, чтобы xyz.vip стал abcd.com

curl -vv http://abcd.com/main

< HTTP/1.1 302 Found

< Server: nginx/1.14.0 (Ubuntu)

< Date: Wed, 30 Dec 2020 05:48:58 GMT

< Content-Type: text/html; charset=UTF-8

< Transfer-Encoding: chunked

< Connection: keep-alive

< location: http://xyz.vip

> <!DOCTYPE html> <html>
>     <head>
>         <meta charset="UTF-8" />
>         <meta http-equiv="refresh" content="0;url='http://xyz.vip'" />
> 
>         <title>Redirecting to http://xyz.vip</title>
>     </head>
>     <body>
>         Redirecting to <a href="http://xyz.vip">http://xyz.vip</a>.
>     </body>

решение1

Можете ли вы попробовать пару вещей? Добавьте это в свое местоположение

proxy_set_header Хост $host;

Или

возврат 301 https://abcd$request_uri;

вместо https://$server_name$request_uri;

Я не использую параметры sub_filter и у меня все работает нормально.

Связанный контент