URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 7813
[ Назад ]

Исходное сообщение
"Проброс запросов к веб-серверу на другой сервер"

Отправлено docent , 03-Дек-13 12:47 
Добрый день.

Есть два веб-сервера на разных компьютерах: www.example.com и shop.example.com. Первый работает под Апачем.
Необходимо организовать доступ ко второму серверу через первый, что бы снаружи второй сервер вообще не было видно.
Что-то типа http://www.example.com/shop/index.php => http://shop.example.com/index.php

Заранее, благодарен.


Содержание

Сообщения в этом обсуждении
"Проброс запросов к веб-серверу на другой сервер"
Отправлено shark Dodson , 03-Дек-13 13:00 
> Добрый день.
> Есть два веб-сервера на разных компьютерах: www.example.com и shop.example.com. Первый
> работает под Апачем.
> Необходимо организовать доступ ко второму серверу через первый, что бы снаружи второй
> сервер вообще не было видно.
> Что-то типа http://www.example.com/shop/index.php => http://shop.example.com/index.php
> Заранее, благодарен.

использовать nginx в режиме обратный прокси
у меня так 2 сервера работают


"Проброс запросов к веб-серверу на другой сервер"
Отправлено docent , 03-Дек-13 15:14 
> использовать nginx в режиме обратный прокси
> у меня так 2 сервера работают

Спасибо, вроде то, что надо.
Только есть одно НО: nginx переадресовывает на сайт shop.example.com, в браузере считывается первая страница, а там все ссылки от корня <a href="/personal/cart/">Корзина</a> (битрикс там стоит) и, естественно, что все эти запросы далее идут уже не на http://shop.example.com/, а на http://www.example.com/

в конфиге nginx прописал так:
server {
        listen          0.0.0.0:8081;
        server_name     www.example.com;
        access_log      /var/log/nginx/www.example.com-access.log;
        include         /etc/nginx/proxy_params;

        location / {
                proxy_pass      http://www.example.com/;
                proxy_redirect  default;
        }

        location /shop {
                proxy_pass      http://shop.example.com/;
                proxy_redirect  default;
        }
}

nginx установлен на том же сервере, где и http://www.example.com/ на Апаче.
Или это только менять путь на втором сервере, что бы он полностью совпадал с путем на первом?