9 / 9 / 0
Регистрация: 18.01.2010
Сообщений: 71
|
|
1 | |
Proxy_rass regexp20.02.2019, 16:03. Показов 1421. Ответов 7
Всем по привету.
Организация, в которой я работаю, блочит очень большое кол-во сайтов. Можно на каждый нужный сайт отправлять заявку, и ждать когда его разблочат... но это долго. Есть домашний сервер, где можно проксировать такого рода сайты. Но тут столкнулся с проблемой на одном из них: подтяжка стилей, скриптов и картинок происходит с субдоменов. Т.е. somedomain.ru - основной сайт sub.somedomain.ru - подгрузка стилей и скриптов sub(\d*)?.somedomain.ru - подгрузка картинок здесь и ежу понятно что нужно использовать регулярку, но, сволоч, не работает для удобства восприятия и тестирования вынес основной домен отдельный конфиг конфиг по основному Код
server { listen *:80; server_name somedomain.my-domain.net; error_log /var/log/nginx/somedomain.my-domain.net.log; location / { root /var/www/null; try_files $uri @static; } location @static { include 'somedomain.conf'; fastcgi_param HTTP_HOST somedomain.ru; proxy_set_header HOST somedomain.ru; proxy_pass [url]https://somedomain.ru;[/url] proxy_set_header X-Real-IP $remote_addr; } } Код
proxy_cookie_domain somedomain.ru somedomain.my-domain.net; proxy_set_header Accept-Encoding ""; subs_filter https://(sub\d*\.)?somedomain.ru http://$1somedomain.my-domain.net ir; Код
server { listen *:80; server_name ~^(?<prefix>sub\d*)\.somedomain\.my-domain\.net$; error_log /var/log/nginx/somedomain.my-domain_error.net.log; location / { root /var/www/null; try_files $uri @static; } location @static { fastcgi_param HTTP_HOST $prefix.somedomain.ru; proxy_set_header HOST $prefix.somedomain.ru; proxy_pass https://$prefix.somedomain.ru; proxy_set_header X-Real-IP $remote_addr; } } У меня такое чувство, что не отрабатывает переменная $prefix в инструкции proxy_pass хотя делал по этому мануалу http://nginx.org/ru/docs/http/... egex_names как быть?
0
|
20.02.2019, 16:03 | |
Ответы с готовыми решениями:
7
REGEXP Regexp RegExp C++ RegExp |
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
20.02.2019, 17:09 | 2 |
Выбран неподходящий инструмент. Следует использовать vpn или socks.
0
|
9 / 9 / 0
Регистрация: 18.01.2010
Сообщений: 71
|
|
20.02.2019, 17:15 [ТС] | 3 |
тем не менее, он имеет право существовать
здесь уже дело принципа - "почему не работает?"
0
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
20.02.2019, 17:39 | 4 |
Так и саморез можно молотком забить, но это не значит что надо даже пытаться так делать.
0
|
9 / 9 / 0
Регистрация: 18.01.2010
Сообщений: 71
|
|
20.02.2019, 17:56 [ТС] | 5 |
вбитый саморез держится лучше чем вкрученный гвоздь - это факт!
это все слова не относящиеся к теме, а по сути: мне не так много из порезанных сайтов требуется. и открывать на паблик лишний порты (vpn или socks) совсем не хочется. поэтому хочу воспользоваться уже существующими сервисами. для nginx`a это не составит большого труда
0
|
1099 / 661 / 397
Регистрация: 07.11.2015
Сообщений: 1,062
|
|
20.02.2019, 18:03 | 6 |
Сообщение было отмечено McSim как решение
Решение
http://nginx.org/ru/docs/http/... proxy_pass
В значении параметра можно использовать переменные. В этом случае, если адрес указан в виде доменного имени, имя ищется среди описанных групп серверов и если не найдено, то определяется с помощью resolver’а. Код
resolver 8.8.8.8;
1
|
Jewbacabra
|
20.02.2019, 21:38
#7
|
0
|
9 / 9 / 0
Регистрация: 18.01.2010
Сообщений: 71
|
|
21.02.2019, 11:11 [ТС] | 8 |
Emilien, спасибо огромное, сработало
вынес resolver 8.8.8.8; в директиву http
0
|
21.02.2019, 11:11 | |
21.02.2019, 11:11 | |
Помогаю со студенческими работами здесь
8
RegExp regexp RegExp RegExp Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |