powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / nginx proxy_pass
3 сообщений из 3, страница 1 из 1
nginx proxy_pass
    #39441464
Фотография k-nike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите настроить nginx, если такое возможно.
Хочу чтобы при обращении на сайт https://mysite/www1/ открывался сайт https://site1/

Экпериментирую.
Указал такой локейшн:
Код: powershell
1.
2.
3.
location / {
       proxy_pass        https://site1/;
}


Набираю в браузере https://mysite/, открывается сайт и по редиректу на нем попадаю на https://mysite/console/ (т.е. в реале на https://site1/console).
Все круто, сайт отображается!

Меняю локейшн на:
Код: powershell
1.
2.
3.
location /www1 {
       proxy_pass        https://site1/;
}



Набираю в браузере https://mysite/www1/, открывается сайт и по редиректу на нем опять попадаю на https://mysite/console. При этом nginx выдает ошибку 404. А правильный путь должен быть https://mysite/www1/console/.

Как правильно это прописать, а может еще нужно задействовать rewrite?
...
Рейтинг: 0 / 0
nginx proxy_pass
    #39442121
Фотография k-nike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изначально была мысль сделать открытие несколько разных сайтов через https://mysite/www1, https://mysite/www2 и т.д., но в итоге решил проблему по-другому. Сделал открытие разных сайтов через разные dns-имена, типа https://www1, https://www2 и т.д.
В DNS все имена указывают на 1 IP, а в конфиге nginx прописал примерно следующее:
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
server {
    listen 443;
    server_name www1
    ssl on;

    location / {
        proxy_pass        https://site1/;
    }
server {
    listen 443;
    server_name www2
    ssl on;

    location / {
        proxy_pass        https://site2/;
    }
...
Рейтинг: 0 / 0
nginx proxy_pass
    #39442513
Мутаген
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
k-nike
Код: powershell
1.
2.
3.
location /www1 {
       proxy_pass        https://site1/;
}




Можно убрать последний слеш в proxy_pass, тогда nginx будет путь пробрасывать полностью URL proxy_pass . Или написать /www1 два раза

Код: powershell
1.
2.
3.
location /www1 {
       proxy_pass        https://site1/www1;
}



Но тогда всеравно не будут работать абсолютные ссылки, выдаваемые site1. То есть, <img src="/image.jpg"> будет браузером запрашиваться у nginx и он их находить не будет, так как правильным линком в этом случае будет /www1/image.jpg.

Так что вариант с несколькими вирт. хостами каждый со своим proxy_pass - самый рабочий.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / nginx proxy_pass
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]