azhurb / stalker_portal

A project that can provide quick and effectively organized access to the video services based on IP networks.
http://www.infomir.eu/eng/products/free-middleware-stalker/
175 stars 151 forks source link

Получение медиа-информации в видео каталоге из хранилища #281

Open Impeck opened 7 years ago

Impeck commented 7 years ago

В видео клубе не удается получить медиа-информацию о файле т.к админка генерирует не верный хэш. При генерации хеша ссылки используется ip-адрес компьютера в с которого зашел в админку, а не ip-адрес сервера с которого идет запрос.

файл stalker_portal/server/lib/master.class.php

$remote_addr = "$this->stb->ip"; $expire = time() + Config::getSafe('vclub_nginx_tmp_link_ttl', 7200); $hash = base64_encode(md5($secret.$uri.$remoteaddr.$expire, true)); $hash = strtr($hash, '+/', '-'); $hash = str_replace('=', '', $hash); $res['cmd'] .= '?st='.$hash.'&e='.$expire;

$remote_addr определяется как удаленный адрес компа с которого зашел в админку. Хотя команда ffmpeg выполняется с сервера. Поэтому хеш не проходит проверку в Хранилище.

Если установить значение $remote_addr адрес сервера, например так $remote_addr = "10.11.12.13"; то будет работать.

Почему $this->stb->ip возвращает ip-адрес клиента, при этом запрос ffmpeg http://... выполняется с сервера?