View Categories

開了 Cloudflare 網站怪怪的:被擋、CSS 不更新、收錄不到

1 分鐘閱讀

快速答案:Cloudflare 站在你的網站前面,所以「網站本身正常,但訪客或 Google 看到的不對」多半是它:安全設定把 Google 爬蟲或正常訪客擋在驗證頁、快取把舊的 CSS 鎖住一年、SSL 模式錯造成轉址迴圈。先把 Cloudflare 暫停(或把那條記錄改成灰雲)測一次,就能分辨問題在主機還是在 Cloudflare。

為什麼會這樣 #

Cloudflare 做三件事,也各有各的出錯方式。安全:Managed Challenge、Under Attack 模式、WAF 規則,會擋掉爬蟲和外部回呼(金流通知、LINE webhook)。快取:邊緣節點會快取 CSS、JS 甚至 HTML,Elementor 的 CSS 檔名不變,改了樣式也拿到舊檔。連線:SSL 模式選錯、Rocket Loader 和自動壓縮會干擾某些外掛的 JavaScript。

另外有一種看起來像問題但不是:Cloudflare 的 Content Signals 會在 robots.txt 自動加一段 Disallow,那只針對 AI 爬蟲,不影響 Google。

怎麼處理 #

  1. 分辨:Cloudflare 儀表板按「Pause Cloudflare on Site」或把 DNS 記錄改成灰雲,等幾分鐘再測。正常了就是 Cloudflare 設定問題。
  2. 被擋:Security → Events 看誰被 challenge。安全等級從 Under Attack 降回來;把驗證過的爬蟲和金流回呼的 IP 加成例外規則。
  3. CSS 不更新:Caching → Purge Everything;Elementor 的「工具」重新產生 CSS。長期解法是設定 Cache Rule 讓 Elementor 的 CSS 目錄用較短的快取時間,或把 Elementor 改成內嵌輸出 CSS。HTML 不要做邊緣快取,除非有快取外掛的整合。
  4. 調整期間開 Development Mode,三小時內不走快取。
  5. SSL 模式選 Full (strict),主機端要有有效憑證。
  6. JavaScript 錯誤:先關 Rocket Loader 和 Auto Minify 試。
  7. 防火牆外掛(Wordfence)的 IP 來源要設成 X-Forwarded-For,否則封鎖會封到 Cloudflare 自己。

我們實際遇過的情況 #

一家客戶的網站整站被 Managed Challenge 擋住,連 robots.txt 都回 403,Google 完全收不到;WordPress 本身檢查完全正常,問題全在 Cloudflare 的安全設定。一家客戶的 Elementor CSS 被 Cloudflare 代理卡住怎麼改都不動;另一家是 CDN 把 CSS 快取整整一年,我們改了 Elementor 的 CSS 輸出方式才根治。

我們盤點一百多個站的收錄狀態時,也發現幾個站的 robots.txt 有 Disallow,查了是 Content Signals,只擋 AI 爬蟲,虛驚一場。

什麼時候該找人 #

金流回呼被擋(客人付了錢但訂單狀態沒更新)、收錄整個掉光、或搞不清楚 DNS 和 Cloudflare 帳號在誰手上。第一種每多一天就多一批對不上的帳。

常見問題 #

怎麼知道問題是主機還是 Cloudflare? #

在 Cloudflare 按 Pause 或把 DNS 記錄改灰雲,幾分鐘後再測,正常了就是 Cloudflare 設定。

Elementor 改了樣式前台一直不變? #

CSS 檔被邊緣快取鎖住,Purge Everything 並重新產生 CSS,長期設 Cache Rule 縮短快取時間。

robots.txt 出現 Disallow 是被擋了嗎? #

若是 Cloudflare Content Signals 加的,只針對 AI 爬蟲,不影響 Google。

網站正在出這個問題?網站救援當日受理;想有人每月幫你顧著 Cloudflare 和主機設定:網站守護方案