Добрый день. Используем Nginx для редиректа на captive-портав с наших wifi-hotspot’ов. Пользователь, подключившись к не защищённой сети при любом обращении в интернет по протоколам http, https перенаправляется на наш портал, где проходит авторизацию (либо получает гостевой доступ). Возникла задача: что бы на клиентских устройствах с iOS (iPhone, iPad) при подключении к нашей сети всплывало pop-UP окно с нашим порталом. Работает это через протокол wisrp, окно называется uam(unified authorization method). Суть метода в том, что при подключении к сети ios запрашивает ссылку с «User-Agent: CaptiveNetworkSupport-200.1 wispr». Если он получает на это 302, то, теоретически, должно возникнуть окошко со страницей, на которую перенаправляет 302-й код. Однако, это в nginx не работает. Проверяли, что работает на microtik. Cнимали дамп пакетов c микротика, увидели следующее:
GET /library/test/success.html HTTP/1.0 Host: www.apple.com User-Agent: CaptiveNetworkSupport-200.1 wispr Connection: close HTTP/1.1 302 Hotspot login required Cache-Control: no-cache Content-Length: 135 Content-Type: text/html Date: Fri, 11 Oct 2013 06:37:38 GMT Expires: 0 Location: http://10.0.2.1/login?dst=http%3A%2F%2Fwww.apple.com%2Flibrary%2Ftest%2Fsuccess.html <html> <head><title>Error 302: Hotspot login required</title></head> <body> <h1>Error 302: Hotspot login required</h1> </body> </html> В случае же работы через портал сообщение следующее: GET /UMzURpsu3rm/tumgdbEHylH.html HTTP/1.0 Host: www.appleiphonecell.com Connection: close User-Agent: CaptiveNetworkSupport-277 wispr HTTP/1.1 302 Moved Temporarily Server: nginx/0.7.67 Date: Fri, 11 Oct 2013 07:37:01 GMT Content-Type: text/html Content-Length: 161 Connection: close Location: https://perm.wifi.domru.ru/index.php?request_uri=http://www.appleiphonecell.com/UMzURpsu3rm/tumgdbEHylH.html <html> <head><title>302 Found</title></head> <body bgcolor="white"> <center><h1>302 Found</h1></center> <hr><center>nginx/0.7.67</center> </body> </html> Что сделал: пробовал через nc слать заголовки из дампа микротика – работает, окно появляется. Пересобрал ngnix, что бы заменить 302 Moved Temporarily на 302 Hotspot login required – не помогло. Есть у кого-то опыт настройки подобных вещей через ngnix?
_______________________________________________ nginx-ru mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx-ru
