Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Проксирующий/кэширующий "сервер" [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (3): « 1 [2] 3 »   

> Без описания
MiksIr
Отправлено: 19 Мая, 2015 - 16:53:51
Post Id


Забанен


Покинул форум
Сообщений всего: 378
Дата рег-ции: Сент. 2014  


Помог: 10 раз(а)

[+]


Ну если честно, создать хороший прокси на пхп, да еще со сложной логикой типа объединения запросов - очень не тривиальная задача. Совсем не уровня новичка.


-----
self-banned
 
 Top
ArtyShock
Отправлено: 19 Мая, 2015 - 20:42:45
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Май 2015  


Помог: 0 раз(а)




Проверил.. сам виноват что сразу не проверил через print_r полный ответ.
А сделал как в примере и поверил описанию $_SERVER в кот. они не описаны
Получил что то типа
CODE (htmlphp):
скопировать код в буфер обмена
  1. ----
  2.     [HTTP_HOST] => 127.0.0.1:80      
  3.     [CONTENT_LENGTH] => 0          
  4.     [HTTP_RANGE] => bytes=92-                      
  5. ----


выглядит странновато но то уже посмотрю что оно хочет..
Еще раз спасибо! (по другому пока не спасибается)

(Отредактировано автором: 27 Июня, 2015 - 23:48:39)

 
 Top
ArtyShock
Отправлено: 28 Июня, 2015 - 00:11:57
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Май 2015  


Помог: 0 раз(а)




Забросил на время эту тему, теперь наступило время продолжить..
Есть технический вопрос, конечно не совсем php касается.
Что бы эмулировать ответ сервера в этом прокси мне нужно точно и подробно знать а как отвечает обычный сервер с медиаконтентом.
Допустим временно использую свой сервер с апачем. Дефолтный Лог апача как по мне не очень то информативен. Как можно или расширить лог или еще как со стороны подойти (например трафик ловить) что бы увидеть точно как сервак отдает (headers, размеры) контент на запрос медиажелезяки?
Всё это для того что бы я мог давать внутри прокси верные ответы на запрос контента..
 
 Top
DeepVarvar Супермодератор
Отправлено: 28 Июня, 2015 - 00:40:27
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Wireshark, tcpdump, tcpflow
 
 Top
armancho7777777 Супермодератор
Отправлено: 28 Июня, 2015 - 03:38:02
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Открываем firebug и ссылку:
http://www[dot]html5videoplayer[dot]net/[dot][dot][dot]eos/toystory[dot]mp4
Мотаем видео туда-сюда, смотрим отправленные/полученные заголовки.
(Добавление)
Если я правильно понял задачу конечно.
 
 Top
ArtyShock
Отправлено: 28 Июня, 2015 - 09:31:25
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Май 2015  


Помог: 0 раз(а)




DeepVarvar да, просто надеялся что можно таки апач промониторить его же средствами.
armancho7777777 не то - это будут ответы броузеру а не железяке.

(Отредактировано автором: 28 Июня, 2015 - 09:32:48)

 
 Top
DeepVarvar Супермодератор
Отправлено: 28 Июня, 2015 - 11:10:54
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




С перечисленными мной можно намутить а-ля митм, слить в файл и просмотреть хекс и текст.
 
 Top
armancho7777777 Супермодератор
Отправлено: 28 Июня, 2015 - 15:14:57
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




ArtyShock пишет:
это будут ответы броузеру а не железяке.

Да что Вы говорите Радость Радость Радость
https://yadi[dot]sk/i/iH9qmDxwhXW9G

(Отредактировано автором: 28 Июня, 2015 - 15:21:10)

 
 Top
DeepVarvar Супермодератор
Отправлено: 28 Июня, 2015 - 15:40:36
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Ему бинарщину надо замониторить, а ты ему только заголовочки предлагаешь подсмотреть.
 
 Top
Viper
Отправлено: 28 Июня, 2015 - 15:41:23
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




ArtyShock пишет:
Посредник на php смотрит.. ага запросил 10 гетов подряд по 5кб.. - подожди, я заберу с медиасервера одним 50кб (или вообще впрок 5мб (но не все 5Гиг - некуда)) и тебе отдам 10 раз по 5 как хотел, но медсервер при этом не страдает от множественных запросов.


когда придет дофига запросов, то сервер уже будет лежать и php будет глубоко какать, на то сколько ему запросов обработать.
Вы решили залепить ещё одну прокладку... Может все же лучше взять специализированные решения для стрима?


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
armancho7777777 Супермодератор
Отправлено: 29 Июня, 2015 - 00:45:34
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




DeepVarvar пишет:
ты ему только заголовочки предлагаешь подсмотреть

ArtyShock пишет:
увидеть точно как сервак отдает (headers, размеры) контент на запрос медиажелезяки

(Добавление)
Ну мне этого хватило, чтобы сделать "прокладку", гонять через проксю заголовки.
заголовки клиента -> получил -> отдал целевому серверу ->
получил заголовки -> отдал клиенту.
И т.д.
Всё работает (переметка и т.д.), но отклик дольше, чем если бы отдавался напрямую физически видео-файл.
Было бы место, можно было бы сохранять у себя видеофайл в моём случае.
Ну да ладно, пример был относительно заголовков.

(Отредактировано автором: 29 Июня, 2015 - 00:52:50)

 
 Top
ArtyShock
Отправлено: 29 Июня, 2015 - 00:59:21
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Май 2015  


Помог: 0 раз(а)




Все правильно, нужна именно "прокладка" посреди цепочки )

armancho7777777 вероятно Ваш пример с заголовками будет достаточен для старта. Не были бы Вы так любезны засветить Ваш пример Закатив глазки

P.S. и здесь
armancho7777777 пишет:
получил заголовки -> отдал клиенту.

но сам контент забирается клиентом таки с целевого сервера а не выплевывается прокладкой?

(Отредактировано автором: 29 Июня, 2015 - 01:26:58)

 
 Top
armancho7777777 Супермодератор
Отправлено: 29 Июня, 2015 - 01:24:41
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Код (Отобразить)


(Отредактировано автором: 29 Июня, 2015 - 20:16:32)

 
 Top
ArtyShock
Отправлено: 29 Июня, 2015 - 01:39:44
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Май 2015  


Помог: 0 раз(а)




Ух, спасибо за материал. Будет над чем подумать (в 1:30 пока не получается Улыбка )

P.S. .... когда уже "спасибоспособность" появится?....
 
 Top
armancho7777777 Супермодератор
Отправлено: 29 Июня, 2015 - 01:41:38
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




armancho7777777 пишет:
получил заголовки -> отдал клиенту
Ну конечно же с полученным ответом.
Видео же мотают, и надо отдать заголовок Range, чтобы получить видео с необходимого участка time line.

(Добавление)
ArtyShock пишет:
P.S. .... когда уже "спасибоспособность" появится?....

Не парьтесь. Не суть.
После 50-ти сообщений на форуме.
(Добавление)
Клиент обращается к серверу и получает Content-Type и Content-Length.
Затем отправляет заголовки Range, If-Range.
При перемотке так же - отдаёт Range, получает ответ.
По сути, работает в целом так же, как при скачивании файлов с докачкой.
(Добавление)
ArtyShock пишет:
но сам контент забирается клиентом таки с целевого сервера а не выплевывается прокладкой?

Обращение к "прокладке", которая получает/отдаёт ответ.
(Добавление)
CODE (text):
скопировать код в буфер обмена
  1. http://my-site.ru/video/<id>

(Добавление)
id - идентификатор записи в таблице БД, где лежат реальные ссылки на видео/аудио файл.
Контроллер разруливает это дело, скармливая url выше приведённой функции video и отдаёт ответ.

(Отредактировано автором: 29 Июня, 2015 - 04:45:22)

 
 Top
Страниц (3): « 1 [2] 3 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB