Из готового шаблона TemplateMonster HTML+FLASH сделать сайт с небольшими исправлениями. Шаблон куплен с исходниками, можно посмотреть тут http://www.templatemonster.com/flash-templates/20396.html Всю основную часть оставляем как есть, отредактировать только контент на страницах и русифицировать (шрифт и прочее). Что нужно изменить: 1) Заменить надписи ...
Тестирование антихотлинк защиты.
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.
В связи с некоторым недопониманием со стороны разработчиков и отсутствием на данный момент моего готового сервиса по предоставлению стримового флэш видео, постараюсь как можно детальней описать именно то, ЧТО ТРЕБУЕТСЯ ОТ ВАС.
Исходные данные:
1) Есть сайт (сервис), предоставляющий стримовое флэш видео (в flv формате) назовем его target.com. К примеру youtube.com.
2) Есть урл конкретной страницы с конкретным видео в виде target.com/watch?v=zgaQCM8PpZ0 или target.com/view_video.php?viewkey=bc7e26c6132e3439abd5, или target.com/very-interesting-video.html или какой угодно, но в общем заданный.
3) Есть сайт, который не хочет тратить свой траффик, но хочет показывать такое же видео, как и на target.com, т.е. хотлинковать. Назовем его hotlink.com.
4) На этом сайте есть страница hotlink.com/hotlink-very-interesting-video-from-target.html (она может называться как угодно). Когда серфер заходит на страницу, то он может смотреть это видео, думая, что оно находится на hotlink.com, но на самом деле оно проигрывается с target.com при чем target.com ни каким образом, ни по каким косвенным данным не должен догадаться, что это видео проигрывается через hotlink.com, а не напрямую с него самого.
Именно реализацию п.4 я и хочу увидеть от разработчика, который возмется писать этот проект.
Детали реализации. Сложности с которыми вы столкнетесь и которые вы должны сразу представлять, а также представлять как вы их разрешите, перед тем как напишите мне:
1) Серфер заходит на hotlink.com/hotlink-very-interesting-video-from-target.html. Ajax кидает запрос на hotlink.com/getVideoUrl.php и получает респонс с урлом на target.com/very-interesting-video.html (или target.com/watch?v=zgaQCM8PpZ0 и т.д.).
Здесь никаких сложностей быть не должно. Для демонстрации можно использовать уже заданный урл (target.com/very-interesting-video.html), который будет лежать на странице hotlink.com/hotlink-very-interesting-video-from-target.html. Таким образом после первого шага мы знаем, куда нам лезть за видео.
2) Ajax отправляет запрос на target.com/very-interesting-video.html с целью выдрать из него абсолютный путь до конкретного video.flv. Запрос отправляется с измененным http_referer запроса (атрибут referer в header запроса). Я должен иметь возможность выставлять любое наперед заданное значение referer. Здесь будем использовать referer = target.com.
Т.е. header запроса должен выглядеть примерно так:
POST (или GET) /path HTTP/1.1
Host: target.com
Referer: target.com (или другой заданный мной)
3) Получили ответ. Если пришла кука, то ставим ее. Дальше возможно несколько вариантов:
а) В респонсе уже содержится абсолютный пусть до video.flv, выпарсываем его и переходим к шагу 5).
б) В респонсе нет прямого пути до video.flv. Но есть другие урлы, если пройти по которым, то можно найти абсолютный путь. Виды этих урлов различаются от сайта к сайту, поэтому я дам вам несколько типовых (начните с youtube.com). Выпарсываем этот url. К примеру со страницы target.com/very-interesting-video.html выпарсили http://www.target.com/watch_real_video.php?id=150324
4) Ajax отправляет запрос на http://www.target.com/watch_real_video.php?id=150324 с целью выдрать из него абсолютный путь до конкретного video.flv. При этом передать полученные куки, если они были и естественно referer=(полученная страница). Здесь тоже разные сайты отдают респонсы в разном формате, поэтому я вам дам список нужных. Один из них youtube.com. Здесь могут быть еще какие-то переходы или другие хитрости, которые вам нужно будет разрешить.
5) После всех переходов мы получили абсолютный урл video.flv (http://video.target.com/flash/temp/fdkj3hj2jhk5/03342/video.flv). Дальше передаем урл этого видео нашему flashplayer.swf, который должен будет его проиграть. Плейер находится на нашем hotlink.com/flashplayer.swf.
6) flashplayer.swf отправляет запрос на http://video.target.com/flash/temp/fdkj3hj2jhk5/03342/video.flv.
По умолчанию, значение referer в header запроса выглядит так:
GET /video.flv HTTP/1.1\r\n
Referer: http://hotlink.com/flashplayer.swf\r\n
Host: target.com
Это верно для IE. В FF referer не передается.
Наш же плейер должен передавать заданный referer=target.com/flvplayer.flv. Или если это невозможно, то пустой реферер.
Фильтр реферов будет осуществляться с помощью .htaccess вот такого вида (с модификациями):
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?target.com [NC]
RewriteRule \.(jpg|jpeg|png|gif|flv)$ http://www.google.com [NC,R,L]
Т.е. допускаются рефы только с заданным урл target.com или с пустым. Остальные редиректятся.
7) Также в этом flashplayer.swf должна быть возможность перематывать видео. Предусмотрите это и все сопутствущие проблемы с реферами, куками и т.д.
В качестве плейера возьмите любой какой хотите (типа такого http://www.jeroenwijering.com/ он опенсорс). Или напишите свой:) Или если вы знаете какой-то платный, который может делать то, что мне нужно. Сообщите мне о нем.
Я надеюсь, что ТЗ больше не вызовет недопониманий. Задача вполне ясна и конкретна.
Если вы точно знаете, как сделать все вышеописанное, то не задумываясь пишите мне.
Если вы точно знаете, как сделать пункты 6)-7), то тоже пишите обсудим цену вопроса.
Пункты 1)-5) без 6)-7) не имеют смысла.
Если у вас есть какие-то альтернативные способы решения поставленной задачи о хотлинке в исходных данных (или 6)-7) пунктов т.е. решение проблемы обхода .htассess.) тоже пишите.
Проверяется это все просто: на локальную машину ставится сниффер типа wireshark и смотрятся все входящие и исходящие по http протоколу.
Спасибо, что дочитали до конца, все уяснили и если написали мне, то по существу.
====================================================================================
Старое неполное ТЗ, можете чисто для интереса ознакомиться :
Есть сайт типа youtube (А), на котором можно смотреть видео в стриме (через флэш плейер). Имеется урл, по которому данное видео находится на сайте.
Есть софт, который не позволяет хотлинковать это видео с других сайтов (Б), анализируя:
1) http_referer хидера запроса. Т.е. видео могу смтореть только те, кто находится на сайте А.
Если запрос приходит с referer: Б, то в доступе отказывается.
2) При заходе на сайт А серферу ставятся куки определенного вида, которые потом анализируются.
3) Считается количество трафика на каждый IP, если IP превысил лимит, то он банится на опрделенное время.
Ваша задача:
Написать ajax и/или ActionScipt скрипт, который бы позволял по заданному урлу видео на сайте А, проигрывать его сайта Б, используя flash player. Т.е. скрипт с клиента отправляет запрос(ы) на сервер А, в этом запросе устанавливается произвольный (http_referer), вместе с ним передается кука (которая могла быть поставлена сайтом А) или заданная. После этого получает ответ с видео и кукой – видео просматриваем, куку устанавливаем.
Особое внимание обращаю, что запрос на получение видео выполняется на стороне клиента!
Надеюсь задача понятна. Только пишите по существу, если вы точно знаете как это делать.
- Похожие заказы
- Веб-программирование1 исполнительЗакрыт15 лет назад
- $50
Необходимо написать скрипт: 1. который будет отслеживать заход юзеров на сайт, 2. засекать время пребывания юзеров на сайте и при их неактивности кликать по одной из ссылок случайным образом на этом же сайте (ссылки на сайте каждый ...
Веб-программирование2 исполнителяЗакрыт15 лет назад - $50
Необходима грамотная установка и настройка под имеющийся стиль всего одного мода(модификации) на форум IPB. Файлы мода, доступ в админку, а так же необходимую в процессе работы информацию предоставлю. Модификация - Inferno IPBShout RU Lite ...
Веб-программирование1 исполнительЗавершен15 лет назад Мне необходим модуль автоматической регистрации доменов. Пример- v1t.ru Суть такова: Пользователь добавляет заявку на регистрацию домена,она автоматически попадает в категорию "На проверке",после проверки модератором сайта,он переносит заявку в категорию "В обработке". При открытии заявки с данной категории у ...
Веб-программированиенет заявокЗакрыт15 лет назадМне необходим модуль автоматической регистрации доменов. Пример- v1t.ru Суть такова: Пользователь добавляет заявку на регистрацию домена,она автоматически попадает в категорию "На проверке",после проверки модератором сайта,он переносит заявку в категорию "В обработке". При открытии заявки с данной категории у ...
Веб-программирование1 заявкаЗакрыт15 лет назадСоциальная сеть на подобии сайтов знакомств, одноклассники, в контакте и т.п. Движок есть, его надо перевести на русский язык. Дизайн наш. Обязательно пишите за сколько вы это сделаете.
Веб-программирование20 заявокЗакрыт15 лет назадНеобходим flash-сайт уровня и объёма www.rim.ru
Веб-программирование13 заявокЗакрыт15 лет назад- $15
Доработать модуль добавления новостей движка ДЛЕ
Веб-программирование1 исполнительЗавершен15 лет назад Требуется специалист. Пример работ пож.
Веб-программирование5 заявокЗакрыт15 лет назад- $100
Приобрету Ваш скрипт "вопросы и ответы".
Веб-программирование1 исполнительЗавершен15 лет назад