FurCDN 文檔

常見問題排查

按症狀分類,從最常見到最少見。每條都附:症狀 → 排查 → 解法。

按症狀分類,從最常見到最少見。每條都附:症狀 → 排查 → 解法


一、域名接入

Q1. CNAME 設了但 DNS 不生效

症狀:dig 你的域名 CNAME 沒返回,或返回的是 NXDOMAIN。

排查:

# 1. 看 CNAME 是否設對
dig +short 你的域名 CNAME

# 2. 看叢集的 CNAME 目標是否正確解析
dig +short <cluster>.cname.furcdn.us

# 3. 從不同 DNS 看
dig +short 你的域名 CNAME @8.8.8.8
dig +short 你的域名 CNAME @1.1.1.1

解法:

  • DNS 傳播延遲,等 5-30 分鐘
  • 確認域名所屬 DNS 服務商沒有開啟「DNSSEC」(可能擋住 CNAME)
  • 確認 CNAME 不要重複(同一個 host 不能既有 A 又有 CNAME)
  • root 域名不能設 CNAME(改用子域名 / 用 ALIAS / ANAME 記錄)

Q2. SSL 憑證一直申請失敗

症狀:域名建立 24h 了,SSL 狀態還顯示「申請中」或「失敗」。

排查:

  1. DNS 真的指向 FurCDN 節點了嗎?dig 你的域名 返回的應該是 FurCDN 節點 IP(透過 CNAME 跳轉)
  2. 80 端口可達嗎?Let's Encrypt 走 HTTP-01 challenge 必須通過 80 端口驗證
  3. 你的 DNS 服務商有沒有 CAA 記錄限制 letsencrypt.org?
dig 你的域名 CAA
# 若有限制應包含: "issue letsencrypt.org"

解法:

  • 加 CAA 0 issue "letsencrypt.org" 記錄
  • 取消 80 端口 redirect 到別處的設定
  • 直接手動上傳憑證

二、回源與 502

Q3. 出現 502 Bad Gateway

症狀:訪客打開網站看到 502 模板頁(顯示「無法連接到源站」)。

排查:

  1. 看 502 頁底部的 RAY-IDREASON 短碼:
    • upstream timeout → 源站回應慢
    • upstream refused connection → 源站拒絕連接(防火牆 / 服務沒起)
    • upstream tls handshake failed → 源站 TLS 配置錯
    • dns resolve failed → 源站 hostname 解析不到
  2. 儀表板 > 域名 > 訪問日誌:該請求是哪個節點 / 哪個 origin / 完整錯誤
  3. 域名 > 健康檢查(若有開):origin-down 確認所有節點都到不了源站

解法:

  • 源站慢 → 改 originTimeoutSec=300(預設 60 秒)
  • 防火牆 → 把 FurCDN 節點 IP 加白(管理員可給節點 IP 列表)
  • TLS 失敗 → 設 sni(回源握手用的 Server Name)或 hostOverride
  • DNS 失敗 → 確認源站域名能在公網解析,不是只在內網

Q4. 全部請求 502 但源站直連正常

症狀:節點 502,但你 curl 源站 正常。

排查:

  1. 回源 IP 防火牆:你的源站可能有防火牆只允許特定 IP 連入
  2. Host header:有些源站根據 Host 路由,FurCDN 預設帶你域名為 Host;若源站期望別的 Host(如雲廠商默認的 hostname),用 hostOverride 覆寫

解法:

hostOverride: bucket-xxx.oss-cn-hongkong.aliyuncs.com

Q5. 部分節點 502 部分正常

症狀:刷新有時拿到 200 有時 502。

原因:多節點服務同一域名,部分節點到源站的網路路徑有問題。

排查:

  • 看訪問日誌的 node 欄位,確認是否總是同一個節點 502
  • 看「健康檢查」聚合判定:可能 edge-and-origin-down 但有節點還能連

解法:

  • 開域名健康檢查,連續失敗會自動觸發 master 把節點移出 DNS
  • 或聯絡管理員手動排查問題節點

三、快取問題

Q6. 快取永遠不命中

症狀:訪問日誌顯示 cache_status=MISS

排查:

  1. 域名 cacheEnabled 開了嗎?
  2. 該 URL 匹配到的規則 ttl > 0 嗎?
  3. 源站有沒有回 Cache-Control: no-store / private / Set-Cookie?
  4. URL 帶不同 query 嗎?沒設 ignoreQueryString 會被算成不同 key

解法:

  • 寫規則 ttl > 0 強制覆寫源站 Cache-Control
  • ignoreQueryString 讓相同資源共用快取
  • 詳見 快取深度指南

Q7. 改了源站但 CDN 沒更新

症狀:源站已部署新版本,但 CDN 還是舊內容。

排查:

  1. 查當前快取的 TTL(X-Cache-Age header)
  2. 規則 TTL 設了多久?

解法:

  • 點「立即刷新快取」清乾淨(全域名 purge)
  • 或等 TTL 自然過期
  • 配合源站使用版本號(?v=2)+ ignoreQueryString 平衡長 TTL 與更新頻率

Q8. 快取了不該快取的(個人資料洩漏)

症狀:訪客 A 看到了訪客 B 的個人資料頁。

這是嚴重 bug,立刻處理:

  1. 點「立即刷新快取」清掉污染
  2. 寫快取規則 path=/api/user/path=/dashboard/path=/account/ 全部 ttl=0
  3. 個人化頁面源站應回 Cache-Control: private 但若沒設,寫規則覆寫
  4. 若有 cookie 區分使用者,加 cacheKeyHeaders=["Cookie"] 讓不同 session 獨立快取(警告:會大幅增加快取空間)

四、WAF 問題

Q9. WAF 規則沒生效

症狀:寫了規則但攻擊請求還是進來。

排查:

  1. 域名 wafEnabled 開了嗎?
  2. 規則 enabled=true 嗎?
  3. 規則 priority 是不是被前面的 allow 蓋掉?
  4. 看訪問日誌的「WAF 命中規則」欄位:有就是真命中,沒就是條件沒匹配
  5. field 名稱拼對嗎?header:User-Agent ❌ → header:user-agent

解法:

  • 改 priority,確保 block 規則在 allow 規則之後(或 allow 太寬鬆)
  • regex 試一條更寬鬆的條件 + log 動作先觀察是否真的能匹配

Q10. WAF 誤封正常使用者

症狀:正常使用者反饋 403。

排查:

  1. 訪問日誌篩選 status=403
  2. 看哪條規則命中
  3. 確認規則寫得太嚴(如 SQL 注入規則誤判含 select 的合法 query)

解法:

  • 立刻把該規則改成 log,不再 block
  • 加白名單規則(高優先級 allow)放行受影響 IP
  • 細化規則條件(如 SQL 注入規則加上 method=POST + 排除特定 path)

Q11. Rate Limit 觸發後永久進不來

症狀:某 IP 觸發限速後,等了很久還是 429。

排查:rateLimitBlock 設多久了?

解法:

  • 暫停該規則 → 已觸發的封鎖會自然 expire
  • rateLimitBlock 調短(如 300 秒)
  • 計數 key = clientIP + rule.id,使用者換 IP 即可繞

五、健康檢查

Q12. 域名健康檢查一直告警

症狀:每天都收到「域名健康檢查告警」郵件。

排查:看告警郵件的失敗類型:

  • edge-down:全節點 vhost 失敗 → 憑證問題 / 域名沒接好 / 節點掛了
  • origin-down:全節點源站不可達 → 源站本身問題
  • edge-and-origin-down:雙方都壞

解法:

  • edge-down + 你剛建域名 → 可能 ACME 還沒完成,等 15 分鐘
  • edge-down + 已用很久 → 開工單聯絡管理員(可能節點問題)
  • origin-down → 修源站 / 加備援源站
  • 確認域名 DNS 真的指向 FurCDN(dig +short 看返回 IP)

Q13. 流量超額自動停用了域名

症狀:域名突然 disable + 收到「本月流量已超額」郵件。

排查:儀表板 > 我的統計 看當月用量 vs 套餐配額。

解法:

  • 升級套餐(更高 bandwidthGbMonth)
  • 等月初 03:00(台灣時間)自動恢復
  • 聯絡管理員贈送流量(走 admin_adjust)

六、登入/帳號

Q14. 通行密鑰登入失敗

症狀:點「使用通行密鑰」沒反應 / 報錯 / 永遠驗證中。

排查:

  1. 瀏覽器是 Chrome 108+ / Edge 108+ / Safari 16+ / Firefox 122+ 嗎?
  2. 用的是 HTTPS 站點嗎?(WebAuthn 強制 HTTPS,localhost 例外)
  3. 之前綁的密鑰還在這台裝置嗎?(換手機 / 重灌系統可能丟失)

解法:

  • 用密碼登入 → 進 dashboard 刪舊密鑰 + 加新密鑰
  • 完全救不回 → /forgot-password 走郵件 reset

Q15. 收不到驗證碼郵件

症狀:點「發送驗證碼到郵箱」沒收到信。

排查:

  1. 查垃圾郵件 / 推廣資料夾
  2. 寄件方:你郵箱有沒有屏蔽 noreply@furcdn.us(或管理員配的寄件域名)
  3. 系統一分鐘最多寄 3 次,超過後續會被靜默丟掉

解法:

  • 等 1 分鐘再試
  • 加白寄件人到地址簿
  • 換用通行密鑰 step-up 驗證(不需要郵件)

Q16. 忘記密碼,重設信也收不到

症狀:/forgot-password 按了沒收到信。

排查:

  • 平台對「不存在的邮箱」與「存在但未發成功」回應一致(防枚舉),所以你看不到差異
  • 系統限速 3 次/小時/邮箱,超過會靜默忽略

解法:

  • 等一小時再試
  • 確認郵箱拼對了
  • 開工單聯絡管理員(管理員可手動 reset)

Q17. 改密之後其他裝置自動登出

症狀:在電腦改密後,手機上的 dashboard 突然要求重新登入。

這是預期行為:改密 / reset 後所有現有 JWT 立即吊銷,防止攻擊者偷的 cookie 繼續有效。


七、計費

Q18. 充值了但餘額沒到帳

症狀:支付寶顯示已支付,但 FurCDN 餘額沒變。

排查:

  1. 儀表板 > 套餐與帳單 > 充值記錄 看訂單狀態
  2. pending:平台 callback 還沒送達

解法:

  • 點訂單詳情的「立即查詢」手動觸發補單
  • 等 30 分鐘背景 cron 自動補
  • pending 一小時以上 → 開工單 + 提供 outTradeNo

Q19. 自動續費沒扣

症狀:套餐到期前 24h 沒見到扣費紀錄。

排查:

  1. autoRenew 開了嗎?
  2. 餘額夠嗎?
  3. 看郵箱有沒有「快到期且餘額不足」通知

解法:

  • 不夠就充值,下個 cron 會嘗試
  • 若反覆失敗,當天不再自動扣(避免 spam),需手動續費或先補餘額

Q20. 兌換碼提示「已被使用」

症狀:輸入兌換碼錯誤訊息「已兌換過」。

排查:

  • 同一帳號只能兌換同一碼一次(unique 守門)
  • 看「操作記錄」搜 redeem_code 確認

解法:該碼換一個帳號,或聯絡發碼方拿新碼。


八、性能

Q21. CDN 比直連源站還慢

症狀:訪問 CDN 域名感覺比 curl 源站 慢。

排查:

  1. 是否每次都 MISS?(看 X-Cache header)
  2. 節點到使用者的網路路徑遠?(看叢集是否選對地區)

解法:

  • 提高快取命中率:寫規則 ttl > 0 強制快取
  • 換更靠近使用者的叢集
  • 開「健康檢查」自動切換故障節點

Q22. 壓測時節點被打掛

症狀:壓測請求觸發大量 503 / 連線中斷。

排查:

  • 預設 WAF 規則有「速率限制」會擋
  • 節點本身有 connection limit

解法:

  • 壓測前加白名單規則放行你的測試 IP
  • 分散到多個 IP 避開 rate limit
  • 跟管理員約壓測時間

九、其他

Q23. 「立即刷新快取」沒清掉

症狀:點了刷新但訪客仍看到舊內容。

排查:

  1. 訪客瀏覽器自己的快取(基於 response 的 Cache-Control / ETag),CDN purge 不影響
  2. SSE 廣播時節點離線

解法:

  • 提示訪客強制刷新(Ctrl+Shift+R / Cmd+Shift+R)
  • 或改規則的 cacheControl 縮短瀏覽器端 max-age
  • 等下次 SSE 重連節點會自動拉最新 config(但舊 cache entry 不會被清,需手動再 purge 一次)

Q24. 跨叢集域名遷移

症狀:想把域名從 mainland 叢集換到 overseas

目前不支援直接遷移:

  • 解法:刪了在另一個叢集重建(會丟失歷史統計)
  • 或開工單請求協助 / 申請功能

Q25. 訪問日誌顯示 IP 是 127.0.0.1 或內網 IP

症狀:訪客 IP 都顯示成本機。

排查:realIpHeader 設了嗎?如果 FurCDN 節點前面還有 Cloudflare / 其他代理,需要設此欄位讓節點從上級 header 取真實 IP。

解法:

  • 直接面向用戶 → realIpHeader 留空
  • 前面有 Cloudflare → realIpHeader=cf-connecting-ip
  • 前面有 nginx → realIpHeader=x-real-ip

Q26. 「禁止指向內網/回環/雲端 metadata 位址」

症狀:加 origin 報錯該訊息。

這是 SSRF 防護:防止使用者把節點當作 SSRF proxy 打內網或雲廠商 metadata API。

禁止的位址:

  • IPv4: 127/8、10/8、172.16/12、192.168/16、169.254/16、100.64/10、0/8、224/4 (multicast)
  • IPv6: ::1、fc00::/7、fe80::/10
  • 雲 metadata: 100.100.100.200(阿里)、metadata.google.internal、metadata.tencentyun.com

解法:

  • 把源站綁到公網 IP / 域名
  • 真有內網需求 → 跟管理員申請(可能需要白名單)

還是沒解決?開工單附上:域名 / 訪問日誌 RAY-ID / 截圖 / 完整錯誤訊息

© 2023-2026 SLOWSPEED NETWORK LLC. 版權所有

langya.io 驅動

On this page