Настройка proxy

Прокси должен стоять внутри вашей сети, и абоненты должны иметь к нему доступ напрямую, без NAT. 
Таким образом имеется возможность передать ваши внутренние серые адреса в заголовке X-Forwarded-For на наш сервер, 
чтобы мы их увидели для каждого абонента. В дальнейшем данные адреса мы передаем вам для авторизации на биллинг (метод auth в api).

Для установки прокси достаточно любого существующего сервера или виртуалки. 
Требованиями к ресурсам можно пренебречь, пока количество ТВ-абонентов не будет измеряться тысячами. 
Используется стандартный nginx, который вы должны установить со следующей конфигурацией:
server
{
 
   listen       XXXX;
   server_name  24h.providername.ru;
 
   access_log  logs/proxy.access.log;
   error_log   logs/proxy.error.log;
 
 
   location /
   {
      proxy_set_header        Host            api.24h.tv;
         proxy_pass https://api.24h.tv;
         proxy_set_header X-Forwarded-For $remote_addr;
   }
 
 
}
Здесь он будет слушать на порту XXXX и переправлять запросы к нам, добавляя поле X-Forwarded-For. 
Имя сервера - подставьте вместо 24h.providername.ru (должно быть создано вами в DNS) - именно к нему 
будут обращаться абонентские устройства, вместо прямого обращения к api.24h.tv. 

После установки сообщите нам имя сервера и порт, мы для вас пропишем его и запросы пойдут через прокси.

Настройка одного входа API

К сожалению сервис 24h.tv обращается к API на стороне провайдера по трем точкам входа:
- provider.ru/24h.tv/auth
- provider.ru/24h.tv/cont
- provider.ru/24h.tv/check
Для сведения обращений в одну точку входа, используйте rewrite. К примеру если скрипты API у вас располагаются так provider.ru/24h.tv/index.php, то в случае nginx, в его конфиг добавляем следующее:

location /24h.tv/ {
  rewrite ^/24h.tv/(.*)$ /24h.tv/index.php?action=$1 last;
}
 
/home/u18456/wiki.flintnet.ru/www/data/pages/api_24h.tv_additional_info.txt · Последние изменения: 2016/12/02 20:14 От kayfolom
 
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki