Rewrite

hyper-v 客戶機上的應用程序請求路由間歇性停止

  • July 12, 2013

簡短的介紹:

我在 hyper-v 客戶機上配置 ARR 時遇到了一個奇怪的問題。

我可以正常載入我的 DotNetNuke/ASPx 站點,但是在一段時間不活動後,頁面不再載入。

它只有在我訪問預設的 IIS 站點並按 Ctrl + F5 後才能恢復工作。直到我再次讓瀏覽器閒置。

下面我描述一下場景和完整的描述:

場景:

(注意:在花了幾天時間試圖解決生產設置的問題後,我禁用了規則並配置了一個“包羅萬象”的規則。它被簡化為這種情況,但問題是一樣的。)

  • 我有一個 d-link DSL-2750B,它將 80 年代的埠轉發到反向代理伺服器(Windows 2012 Std VM);
  • 此反向代理伺服器啟用了 ARR 並配置了 URL 重寫規則,以使用“catch-all 規則” (*) 將所有呼叫重定向到 Web 伺服器(重新路由到其農場),僅用於測試目的;
  • 在也是一個虛擬機的 Web 伺服器中,我有 3 個 DotNetNuke 站點和 1 個預設的 IIS 網站,只有預設的 html;
  • 所有這些站點都沒有 Windows 身份驗證。他們都接受匿名。

詳細描述:

上面的配置有效。為了使測試更強大,我正在使用我的家用電腦通過 LogmeIn 訪問公司頁面:

  • 我打開我的“家”網路瀏覽器並導航到所有站點(3 個 dnn 站點和預設的 IIS 站點)。一切都好。
  • 現在我讓 Web Broser 閒置或繼續工作,隨機幾分鐘。
  • 突然,當我嘗試刷新或瀏覽網站時,頁面沒有載入,Web 瀏覽器一直顯示“進度圖示”(在 Firefox 上,綠色圓圈,灰色圓圈之後)。
  • 它會保留很長時間,直到出現“連接重新啟動”消息。
  • 無論點擊多少次“刷新”按鈕,它都會一直顯示綠色圓圈。此外,關閉瀏覽器並打開新實例也無濟於事。最終,幾分鐘後,站點恢復工作。
  • 現在奇怪的部分:如果我導航預設的 IIS 站點,然後按 Ctrl+F5,我可以正常導航到 DNN 站點!
  • 一切都很好,直到它最終再次卡住,幾分鐘後。

有人通過這個問題嗎?

更多資訊:

  • 在“家庭”Web Broser 卡住的同時,一個“公司”Web 瀏覽器(注意,在同一網路中)正常工作,通過使用HOSTS 修改指向ARR 伺服器)。
  • 如果我將防火牆直接轉發到 Web 伺服器 (VM),一切似乎都執行良好。
  • 似乎有工作時間和非工作時間。它是間歇性的。
  • 我發現繞過這個問題的唯一技巧是在 Web 瀏覽器中載入預設的 IIS 網站。

行。經過一天的測試,現在涉及到一位朋友,我們找到了強盜:路由器。

我們剛剛用備用的舊的和好的 D-Link DI-624 替換了路由器,現在一切正常。

以下是我們找到問題點的步驟:

  • 首先,我們在論文中繪製了請求從客戶端到 Web 伺服器的整個基礎架構

  • 然後,我們開始排除測試。從頭到尾驗證問題。首先,再次測試走在整個基礎設施中的請求

  • 之後,我們將網站移動到每台伺服器並測試每台伺服器:

    • 從“VM Web Server”到“VM ARR Server”,並對其進行本地和遠端測試
    • 從“VM ARR 伺服器”到“Hyper-v 主機伺服器”並對其進行本地和遠端測試
  • 對於每個網站移動,我們將防火牆指向 ARR 並直接指向 Web 伺服器

通過這些測試,我們可以消除作業系統、hyper-v 客戶機、ARR/Rewrite 甚至我們的網路或網卡或電纜中的錯誤。

因此,當我們進行測試時,當我們到達鏈中的最後一個環節:路由器時,我們冒著繪圖的風險。

就是這樣!

引用自:https://serverfault.com/questions/522448