Как предотвратить перенаправление URL-адресов в Chrome?

Как предотвратить перенаправление URL-адресов в Chrome?

Когда я ввожу URL и нажимаю Enter, например abc.com, я не ожидаю, что попаду куда-то еще. Я ожидаю страницу с ошибкой, если сайта с таким URL нет. Но вместо этого меня перенаправляют на другой URL (даже на другой домен: abc.go.com).

Я не эксперт в веб-технологиях, но, насколько я могу судить, существует две основные категории перенаправлений: перенаправления DNS/регистратора (невидимые) и перенаправления на стороне сервера (видимые, http-код 301 или 302).

Как мне предотвратить эти перенаправления на стороне сервера в Chrome? В лучшем случае я получаю страницу с сообщением о том, что у страницы другой URL или IP, и спрашиваю, хочу ли я продолжить.

Другой пример: hackoverflow.comменя перенаправляют на два сайта отсюда, после первого перенаправления я могу мельком увидеть разработанную домашнюю страницу, прежде чем меня переместят на парковочный сайт. Я хотел бы остановить этот двойной перенаправление на полпути и изучить второй сайт.

решение1

Я понимаю, что это далеко не идеальный ответ, поскольку он будет работать только для ответов, содержащих контент, но я решил опубликовать его, поскольку на данный момент нет ни одного полезного и действенного ответа.

В качестве быстрого и грубого решения вы можете использовать отладчик (доступный в F12большинстве CTRL+SHIFT+Iбраузеров), чтобы дать себе возможность отказаться от перенаправления.

Запустите эту строку в консоли, прежде чем страница запустит какие-либо собственные скрипты:

window.onbeforeunload = function(){ return 'Leave page?'; };

Например, используя Chrome:

  • Откройте отладчик ( F12) и переключитесь наИсточникивкладка.
  • Нажмите F8, чтобы перевести отладчик в пошаговый режим.
  • Перейдите на проблемную страницу. Она начнет загружаться, но отладчик не позволит запустить скрипты.
  • Вставьте указанный выше код в консоль и нажмите Enter.
  • Нажмите F8еще раз, чтобы разрешить выполнение скриптов и дождаться завершения загрузки страницы.
  • Теперь перед перенаправлением вы увидите уведомление и сможете отменить его.
  • Если страница неоднократно пытается перенаправить вас, вы можете указать Chrome не отображать диалог снова. Дальнейшие попытки страницы перенаправить вас куда-либо еще будут молча терпеть неудачу.

Запрос восстанавливает контроль пользователя

решение2

Еще один временный способ остановить перенаправление — нажать escкнопку до того, как оно произойдет.

escостанавливает выполнение js на странице, а также html от рендеринга, так что если нажать достаточно быстро, перенаправление не должно произойти, но, возможно, страница не будет полностью загружена. Может быть полезно исследовать содержимое страницы и другую информацию, например, файлы cookie

решение3

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

<html>
    <head>
        <meta content='0;URL=&#39;https://scam-website-two.scam&#39;' http-equiv='refresh' />
    </head>
    <!-- other HTML here -->
</html>

Этот metaтег перенаправлял на второй мошеннический сайт после попадания на первый мошеннический сайт. Подробнее о перенаправлении с помощью metaтегаздесь.

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

Есть множество способов сделать это. Поскольку я работал внутри своей выделенной виртуальной машины Linux, где я анализирую мошенничество, я сделал следующее внутри терминала (bash):

content=$(wget http://scam-website-one.scam -q -O -)

echo $content > scam.html

Кредит там, где кредит причитается

Подводя итог, основной алгоритм выглядит так:

  1. Выберите язык
  2. Выполните HTTP GET для вашего проблемного URL
  3. Сохраните выходную строку в переменной
  4. Сохранить выходную строку в файл

Как я уже упоминал, это поможет вам хотя бы увидеть, что вызывает перенаправление. После загрузки файла я удалил этот metaтег, а затем смог просмотреть страницу.

решение4

Насколько мне известно, отключить эту функцию невозможно.

Что еще важнее, это нарушит очень базовую функциональность, на которую полагаются веб-серверы. Можно ожидать, что множество веб-сайтов просто перестанут работать.

Как минимум, - все перенаправления «www» перестанут работать - все перенаправления «http-to-https» перестанут работать

Поэтому вам придется вручную вводить «https://www' перед каждым доменом.

Кроме того, многие подстраницы веб-сайтов также перестанут функционировать.

Поэтому я не удивлюсь, если разработчики Chrome и Firefox сделают отключение перенаправлений на уровне браузера крайне затруднительным или невозможным.

Связанный контент