В общем дело оказалось не в nginx. Там в js user-agent проверяется.
server { listen 80; server_name myru.tv www.myru.tv; location / { add_header 'Cache-Control' 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0'; expires off; proxy_hide_header User-Agent; proxy_set_header Accept ""; proxy_set_header Accept-Encoding ""; proxy_set_header Host $host; proxy_set_header User-Agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.78 Safari/537.36"; location = /player/script.js { sub_filter_once off; sub_filter '127.0.0.1:6878' '192.168.1.11:6878'; sub_filter '_platform=TorrentStream.Utils.detectPlatform()' '_platform="windows"'; sub_filter_types *; proxy_pass http://myru.tv; } proxy_pass http://myru.tv; } } 28 октября 2017 г., 14:24 пользователь Alex Emergy <alex.eme...@gmail.com> написал: > Есть сайт работающий через торрент стрим. Там js делает запросы на > локальный порт, на котором висит софтина AceStream, что-то типа: > > http://127.0.0.1:6878/webui/api/service?callback= > jQuery17033631382683313515_1509188498027&method=get_ > version&format=jsonp&_=150918849805 > http://192.168.1.11:6878/server/api?method=open_in_player&content_id= > 2920e9961c24ab4e44b07c1fab4f6b750bd2ddfa&player_id= > 0f3a8626f1017b92058dd3cdcb2c2d15d8e5a2a3&_=1509189716189 > > В результате чего, контент воспроизводится локально в VLC плеере. > > Задача: подменить локальный адрес на 192.168.1.11, на котором и весит эта > софтина, для того, чтобы с любого устройства в локальной сети, можно было > зайти на сайт и включить воспроизведение на телевизоре (медиасервере). Т.е. > удалённо. > > Не долго думая, я прописал в DNS, адрес сайта есть мой шлюз и сделал > конфиг в моём nigix, для подмены строк в js скрипте. > > server { > listen 80; > server_name myru.tv www.myru.tv; > > set $ua "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like > Gecko) Chrome/41.0.2228.0 Safari/537.36"; > > gzip off; > gunzip on; > gzip_proxied off; > > location / { > proxy_set_header User-Agent $ua; > proxy_set_header Accept ""; > proxy_set_header Accept-Encoding ""; > proxy_set_header Host $host; > proxy_set_header X-Real-IP $remote_addr; > proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; > > location = /player/script.js { > sub_filter_once off; > sub_filter '127.0.0.1:6878' '192.168.1.11:6878'; > sub_filter_types *; > proxy_pass http://myru.tv; > } > > proxy_pass http://myru.tv; > } > } > > Все работает, за исключением подмены User-Agent'а. И если не менять его в > клиентском ПО (браузере), сайт выдаёт заглушку, типа ПО для моей платформы > в разработке. > > В общем экспериментировал-экспериментировал - никак не могу заставить > "бэкенд" думать что у меня винда((( > > Объясните, что я делаю не правильно > > -- > С уважением, > Alex Emergy > -- С уважением, Рулев Александр
_______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru