如何防止 Chrome 中的 URL 重新導向?

如何防止 Chrome 中的 URL 重新導向?

例如,當我輸入 URL 並按 Enter 時abc.com,我不希望最終到達其他地方。如果沒有具有該 URL 的網站,我預計會出現錯誤頁面。但相反,我被重定向到另一個 URL(甚至是另一個網域:)abc.go.com

我不是網路技術專家,但據我所知,重定向主要有兩類:DNS/註冊商重定向(不可見)和伺服器端重定向(可見,http 代碼 301 或 302)。

如何在 Chrome 中阻止這些伺服器端重新導向?最好的情況是我收到一個提示頁面,告訴我該頁面有不同的 URL 或 IP,詢問我是否要繼續。

另一個例子是hackoverflow.com我從這裡重定向到兩個站點,在第一次重定向之後,我可以在移動到停車站點之前瞥見設計的主頁。我想在雙重重定向中途停止並檢查第二個站點。

答案1

我意識到這遠遠不是一個完美的答案,因為這僅適用於提供內容的回應,但我決定發布它,因為目前有用的、可操作的答案為零。

作為一種快速而骯髒的解決方案,您可以使用偵錯器(大多數瀏覽器都可以存取F12CTRL+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. 對您的問題 URL 執行 HTTP GET
  3. 將輸出字串儲存到變數
  4. 將輸出字串儲存到文件

就像我之前提到的,這至少可以幫助您了解導致重定向的原因。下載檔案後,我刪除了該meta標籤,然後我就可以查看該頁面了。

答案4

據我所知,目前還沒有辦法停用這個功能。

更重要的是,這樣做會破壞 Web 伺服器所依賴的一個非常基本的功能。您可以預料到很多網站都會停止運作。

至少, - 所有“www”重定向將停止工作 - 所有“http-to-https”重定向將停止工作

所以你必須手動輸入'https://www' 在每個網域之前。

除此之外,網站內的許多子頁面也將停止運作。

因此,如果 Chrome 和 Firefox 開發人員使在瀏覽器層級完全停用重定向變得非常困難或不可能,我不會感到驚訝。

相關內容