Проверка редиректа на сайте

Статус
В этой теме нельзя размещать новые ответы.

vovaNux

Постоялец
Регистрация
10 Апр 2007
Сообщения
124
Реакции
17
Возможно ли средствами php проверить, есть ли на странице редирект? Имеется в виду редирект, реализуемый яваскриптом. Если это нельзя сделать на PHP, есть ли идеи, как это сделать в принципе?
 
можно поискать в тексте страницы наличие строк location.href и location.replace - в подавляющем большинстве случаев редирект на яваскрипте делается именно так.
 
Можно убрать строку с location во внешний файл. Тогда без проверки включаемых ява файлов не обойтись....
 
А как быть если редирект шифрованный? Простым поиском не возьмёшь... Я так понимаю, чтонадо как-то эмулировать браузер... возможно ли такое?
 
Мне кажется невозможно, это как со всплывающими окнами, борятся, а дырки новые переодически находят как окошко открыть...
 
...Если это нельзя сделать на PHP, есть ли идеи, как это сделать в принципе?

Ну впринципе можно попробовать с помощью того же яваскрипта. Например открывать интересующюю вас страницу в ифрейме. затем 2 варианта
1) ели редирект происходит только в ифрейме - то искать на этой странице ифрэйма через некоторое время определённый тэг (или сравнить что было вначале и что стало в конце :) ). Но не забыть перед этим настроить соответствующим образом браузер что бы он мог доступиться с к ифрейму.
2) если редирект происходит на всей старице т.е. в ифрэйме вызываеться нечто вида top.location = url, то ещё проще. запускаем на странице пэрэнта javascript который после 5-ти секунд делает запрос на вашу секретную страницу. Соответственно если запрос не был сделан значит был редирект (или вы случайно закрыли страницу :) ).

Добавлено через 8 минут
ещё кстати можно попробовать снифить запросы. например сделать локальный прокси и настроить через него ваш браузер. затем в цикле пройтись браузером по всем интересующим вас страницам. (для этого можно написать плагин для браузера; извратиться с яваскриптом; или в цикле запускать из командной строки нечто вида "firefox google.com" где вместо google.com - ваш урл). А затем проанализировать лог прокси. Только советую вначале отключить в браузере всякие картинки и css что бы лог получился более чистый.
 
Хотелось бы поподробнее про прокси; проверка редиректа должна быть на любых хостах, не только на своём или локально
 
идея заключается не в прокси а в том что бы использовать движок браузера для выполнения яваскрипта. браузеры в основном десктопные, максимум для командной строки, откомпилированные в исполняемый код. (возможно есть какие-то разработки на основе php, но про них мне ничего не известно :) )
а использование прокси - это как варианта для отслеживания запросов. Допустим все запросы твой браузер делает через некий прокси (который естессно ведёт лог). Допустим браузер запрашивает старницу site.com, а на ней происходит редирект на test.com. Тогда в логе твоей прокси будут две записи: сначала обращение к site.com, затем к test.com. Таким образом анализируя лог ты можешь узнать о редиректе.
 
Это я понял. Теперь нужно найти такой прокси и хотелось бы установить его локально, чтобы локально и тестить. Подскажите подобный софт!
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху