Рейтинг:1

Перенаправление портов не работает должным образом в обратном прокси-сервере nginx

флаг eg

Вот еще одна проблема, с которой я столкнулся. у меня работает портал http://test.example.com:8080/AppWise и http://test.example.com/WebAdmin

Теперь я перенаправил этот портал через обратный прокси-сервер Nginx.

вот мой конфиг

сервер {
    слушать 8080;
    слушать 80;
    имя_сервера test.example.com;
    журнал_доступа /var/log/nginx/twprod/access.log;
    журнал_ошибок /var/log/nginx/twprod/error.log;
    включить /etc/nginx/applox/feeds/badips.txt;
    местоположение /AppWise/ {
        client_max_body_size 10м;
        client_body_buffer_size 128 КБ;
        proxy_send_timeout 90;
        proxy_read_timeout 90;
        proxy_buffer_size 128k;
        proxy_buffers 4 256 КБ;
        proxy_busy_buffers_size 256 КБ;
        proxy_temp_file_write_size 256 КБ;
        proxy_connect_timeout 30 с;
        прокси_пасс http://test.example.com:8080;
        прокси_перенаправление выключено;
        proxy_set_header Хост $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
    расположение /WebAdmin/ {
        client_max_body_size 10м;
        client_body_buffer_size 128 КБ;
        proxy_send_timeout 90;
        proxy_read_timeout 90;
        proxy_buffer_size 128k;
        proxy_buffers 4 256 КБ;
        proxy_busy_buffers_size 256 КБ;
        proxy_temp_file_write_size 256 КБ;
        proxy_connect_timeout 30 с;
        прокси_пасс http://test.example.com:8080;
        прокси_перенаправление выключено;
        proxy_set_header Хост $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Дело в том, что первая страница открывается правильно, а затем запрашивает пароль пользователя; это хорошо. теперь после входа в систему я внезапно получаю 302, и страница перенаправляется на http://test/example.com/Appwise/<...........REST URI.....>

10.0.22.99 - - [20/Sep/2021:18:41:05 +0530] "POST/AppWise/servlet/TeamAccess/Login HTTP/1.1" 302 0 "http://test.example.com:8080/AppWise /servlet/TeamAccess/Login" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/93.0.4577.82 Safari/537.36"
10.0.22.99 - - [20/Sep/2021:18:47:42 +0530] "POST/AppWise/servlet/TeamAccess/Login HTTP/1.1" 302 0 "http://test.example.com:8080/AppWise /servlet/TeamAccess/Login" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/93.0.4577.82 Safari/537.36"
10.0.22.99 - - [20/Sep/2021:18:51:04 +0530] "POST /AppWise/servlet/TeamAccess/Login HTTP/1.1" 302 0 "http://test.example.com:8080/AppWise /servlet/TeamAccess/Login" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/93.0.4577.82 Safari/537.36"

Я ожидал, что эта страница останется на http://test.example.com:8080

флаг in
Скорее всего, перенаправление происходит с вашего внутреннего сервера. Настройте внутренний сервер с правильным базовым URL-адресом.
Blason R avatar
флаг eg
Что ж, когда я изменяю запись в файле hosts и указываю ее непосредственно на сервер, а не на обратный прокси-сервер, она остается на порту 8080. Следовательно, довольно сложно убедить администратора сервера, что эта запись передается с исходного сервера.
флаг us
Когда внутренний сервер получает запрос на `http://test.example.com`, но настроен для работы на `http://test.example.com:8080`, многие внутренние приложения отправляют перенаправление на `http ://test.example.com`. Вы можете показать этот факт администратору внутреннего сервера, запустив tcpdump во время отправки запроса.
Michael Hampton avatar
флаг cz
Это перенаправление абсолютно исходит от AppWise, а не от nginx.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.