這大概是網站出問題時最讓人火大的一種回覆:你明明接到客戶抱怨連不上,主機商卻回你「我們這邊檢查一切正常」。

然後對話就卡在這裡了。

他說的「正常」是真的

先講一個會讓人比較不生氣的前提:主機商那句話通常沒有在敷衍你。

他能看到的範圍,就是他機房裡那台機器。機器有在跑、網站服務有在回應、硬碟沒滿、他從機房內部連得上你的網站 —— 以他看得到的範圍而言,確實一切正常。

但是訪客連到你的網站,要經過的環節大概是這樣:

  • 訪客的裝置與瀏覽器
  • 訪客的網路業者
  • 網域名稱的查詢(DNS)
  • 中間的國際線路
  • CDN 或雲端防護層(如果有裝)
  • 機房外層的防火牆
  • 主機本身
  • 網站程式與資料庫

主機商能看到的是倒數兩項。前面六項他看不到,也不會收到任何警報。

所以「主機正常」和「客戶連不上」可以同時都是事實。

主機商看不到的四種狀況

一、網域查詢被舊資料卡住。

你的網站搬過家或換過 IP,新的位置要花時間傳遍全世界的查詢伺服器。在那之前,某些訪客的電腦還拿著舊地址去敲門,敲的是一台已經不在那裡的機器。

特徵是:換過主機或改過設定之後才開始的,而且過幾天會自己好。

二、訪客的 IP 被防火牆封了。

機房外層的防火牆有自動封鎖機制,連續失敗幾次登入、或者短時間送出太多請求,就會把那個 IP 關起來幾小時到一天。

這個很容易誤傷自己人:公司整層樓共用一個對外 IP,有人在後台密碼打錯幾次,整間公司一起被擋在門外。

特徵是:某幾個人完全連不上,而且是突然開始的,其他人完全正常。

三、雲端防護層把訪客當成攻擊。

如果網站前面有掛 CDN 或防護服務,它會自己判斷哪些流量可疑。判斷錯的時候,訪客會看到驗證畫面、或者一直轉圈圈。

這一層出問題,主機完全不會有任何紀錄,因為請求根本沒到主機。

四、訪客的網路業者路由有問題。

某一段國際線路或某一家業者的路由出狀況,用那家網路的人就是連不上。這個你跟主機商都無能為力,但至少可以確認原因不在你身上。

特徵是:連不上的人剛好都用同一家網路。

為什麼只有部分人連不上

上面四種裡面有三種,影響的都只是一部分訪客。

這也是為什麼這類問題特別難處理:你自己連得上,公司的人連得上,所以你很難相信真的有問題。而抱怨的客戶說不出技術細節,只會說「你們網站壞了」。

如果你聽到的抱怨是零散的、不是全面的,優先往「部分訪客」的方向查,不要往「主機壞了」的方向查。方向對了之後,這幾種都不難確認。

你該提供什麼,對話才會往前走

跟主機商說「有客戶連不上」,他只能回你一切正常,因為你沒有給他任何可以查的東西。

把下面四項問出來,再去反映:

  • 連不上的人在哪裡、用哪一家網路。中華電信、台灣大寬頻、還是公司專線。
  • 他看到的畫面長什麼樣子。完全空白、轉圈圈到逾時、紅色警告頁、還是「找不到伺服器」—— 這四種指向完全不同的環節。
  • 精確的時間,到分鐘。有時間點才能去翻那個時間的紀錄。
  • 他的對外 IP。請他搜尋「我的 IP」,把那串數字給你。有這個,主機商三十秒就能查出他是不是被防火牆封了。

有這四項,主機商就查得動了。沒有這四項,不管換哪一家主機商,回覆都會是一切正常。

一個分辨方向的簡單測試

請連不上的那個人做一件事:用手機關掉 Wi-Fi,改用行動網路開一次你的網站。

  • 行動網路可以、家裡或公司的網路不行 —— 問題在他那條線路或他的 IP 被擋,不是你的網站。
  • 兩種網路都不行,但你這邊正常 —— 往網域查詢或雲端防護那一層查。
  • 所有人都不行 —— 這才是主機或網站本身的問題,而這種主機商自己就會發現。

這個測試花三十秒,但它決定你接下來要找誰。

說到底,「主機商說正常」的真正問題不是主機商不認真,是沒有人站在整條路徑的角度去看。我們接手維護的站台,網域查詢、防護層設定、防火牆封鎖紀錄都在我們可以直接查的範圍內,所以不會卡在互相推來推去。如果你現在遇到的就是這種卡住的狀況,可以看一下我們的維護方案,或把症狀直接丟過來。