1. Задавайте здесь вопросы о коде, которые не подходят в другие разделы, такие как:
    Дизайн > Верстка
    PHP > Как сделать на PHP
    Скрыть объявление

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

Тема в разделе "Web Coding", создана пользователем vovaNux, 1 мар 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. vovaNux

    vovaNux Постоялец

    Регистр.:
    10 апр 2007
    Сообщения:
    125
    Симпатии:
    16
    Возможно ли средствами php проверить, есть ли на странице редирект? Имеется в виду редирект, реализуемый яваскриптом. Если это нельзя сделать на PHP, есть ли идеи, как это сделать в принципе?
     
  2. Karlasan

    Karlasan Постоялец

    Регистр.:
    7 дек 2007
    Сообщения:
    131
    Симпатии:
    204
    можно поискать в тексте страницы наличие строк location.href и location.replace - в подавляющем большинстве случаев редирект на яваскрипте делается именно так.
     
  3. aleksandr1277

    aleksandr1277 Писатель

    Регистр.:
    30 авг 2007
    Сообщения:
    3
    Симпатии:
    1
    Можно убрать строку с location во внешний файл. Тогда без проверки включаемых ява файлов не обойтись....
     
  4. vovaNux

    vovaNux Постоялец

    Регистр.:
    10 апр 2007
    Сообщения:
    125
    Симпатии:
    16
    А как быть если редирект шифрованный? Простым поиском не возьмёшь... Я так понимаю, чтонадо как-то эмулировать браузер... возможно ли такое?
     
  5. Tacit

    Tacit Писатель

    Регистр.:
    9 окт 2007
    Сообщения:
    6
    Симпатии:
    0
    Мне кажется невозможно, это как со всплывающими окнами, борятся, а дырки новые переодически находят как окошко открыть...
     
  6. durman

    durman Постоялец

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

    Добавлено через 8 минут
    ещё кстати можно попробовать снифить запросы. например сделать локальный прокси и настроить через него ваш браузер. затем в цикле пройтись браузером по всем интересующим вас страницам. (для этого можно написать плагин для браузера; извратиться с яваскриптом; или в цикле запускать из командной строки нечто вида "firefox google.com" где вместо google.com - ваш урл). А затем проанализировать лог прокси. Только советую вначале отключить в браузере всякие картинки и css что бы лог получился более чистый.
     
  7. vovaNux

    vovaNux Постоялец

    Регистр.:
    10 апр 2007
    Сообщения:
    125
    Симпатии:
    16
    Хотелось бы поподробнее про прокси; проверка редиректа должна быть на любых хостах, не только на своём или локально
     
  8. durman

    durman Постоялец

    Регистр.:
    18 фев 2008
    Сообщения:
    87
    Симпатии:
    8
    идея заключается не в прокси а в том что бы использовать движок браузера для выполнения яваскрипта. браузеры в основном десктопные, максимум для командной строки, откомпилированные в исполняемый код. (возможно есть какие-то разработки на основе php, но про них мне ничего не известно :) )
    а использование прокси - это как варианта для отслеживания запросов. Допустим все запросы твой браузер делает через некий прокси (который естессно ведёт лог). Допустим браузер запрашивает старницу site.com, а на ней происходит редирект на test.com. Тогда в логе твоей прокси будут две записи: сначала обращение к site.com, затем к test.com. Таким образом анализируя лог ты можешь узнать о редиректе.
     
  9. vovaNux

    vovaNux Постоялец

    Регистр.:
    10 апр 2007
    Сообщения:
    125
    Симпатии:
    16
    Это я понял. Теперь нужно найти такой прокси и хотелось бы установить его локально, чтобы локально и тестить. Подскажите подобный софт!
     
Статус темы:
Закрыта.