你的網站上線第一天,就有機器人在攻擊它
每個上線的網站都是攻擊目標,差別只在你知不知道。一層免費的 Cloudflare 設定,讓 99% 的惡意流量在抵達你的網站之前就被擋掉。
目錄+
你花了幾個禮拜做好網站,買了域名,部署到 Vercel,發了一則 X 慶祝上線。
那個時刻很好。但在你發文的同時,有幾百個 bot 已經找到你的網址了。
這不是誇張。研究顯示,一個新域名在上線後平均不到一小時就會收到第一個自動化掃描請求。你不需要有名,不需要有流量,只需要存在,它們就會來。
問題不是「會不會被攻擊」,而是「你準備好了嗎」。
它們是誰,它們想要什麼
網路上的惡意流量大致分三種,目標不同,但都不是真人。
惡意流量類型分佈(%)
DDoS 攻擊流量,是最暴力的一種。它不求竊取什麼,只是用海量請求把你的伺服器打爆。想像一間餐廳突然湧進一萬個人,但每個人都只是站著佔位子、不點餐、不走。廚房停擺,真正的客人進不來。對你的網站來說,DDoS 的結果就是這樣:正常訪客看到的是 502 錯誤頁,而你的帳單繼續跑。
惡意爬蟲,目的是抄你的內容。它們自動瀏覽你網站的每一頁,把文章、圖片、產品資料全部抓走,用在競品網站或 AI 訓練資料集。你寫了三年的文章,對方一個晚上複製完畢。SEO 排名也會因為重複內容受損,但那是你的問題,不是它們的問題。
垃圾 Bot,專門找表單和留言欄。聯絡表單、訂閱框、評論區,只要有輸入欄位它就試。輕則塞滿垃圾郵件通知,重則試圖暴力破解登入密碼。你的 email 信箱會收到幾百封「有人填了表單」的通知,但沒有一封是真人。
沒有守門員的世界
Vercel 很好,它讓你不用管伺服器就能上線。但「不用管」不代表「沒有風險」。
預設情況下,你的網站是這樣的:
所有流量無差別打進來。Vercel 的伺服器要處理所有請求,不管是真人還是機器人。你完全不知道有多少流量是惡意的,更沒有辦法阻擋它們。
當流量夠大,後果是:網站變慢、偶爾出錯、帳單超出預期。最壞的情況是直接打掛,真正的訪客無法訪問。
Cloudflare 是什麼
Cloudflare 不是一個你安裝在網站上的工具,而是一道坐在訪客和你的網站之間的牆。
準確說,它是一個全球代理網路。當你把域名的 DNS 指向 Cloudflare,所有流量都會先抵達 Cloudflare 的節點,由它決定這個請求能不能繼續往前走。
Cloudflare 在幾毫秒內判斷一個請求是否來自真人。它有全球 2,000 萬個網站的流量資料作為比對基準,知道哪些 IP、哪些行為模式、哪些 User-Agent 是已知的惡意來源。你什麼都不用設定,它自動擋。
它實際擋了什麼,又放行了什麼
封鎖的:
- 已知的惡意 Bot IP(Cloudflare 的全球黑名單持續更新)
- 模擬瀏覽器行為但特徵不符的自動化流量
- 大量重複請求的 DDoS 來源
- 爬取網站結構的掃描器
放行的:
- 真人訪客(完全不受影響,不會看到驗證碼)
- Googlebot(搜尋引擎爬蟲,SEO 正常運作)
- Google AdSense 爬蟲(廣告審核正常)
- 其他合法的搜尋引擎
這是免費方案的 Bot Fight Mode 做的事。它不完美,但擋掉了絕大多數自動化惡意流量。
怎麼開始:四個步驟
不需要寫程式,只需要改兩個地方的設定:
- 在 Cloudflare 新增你的域名 — 選「連結網域」,輸入你的域名,選免費方案,讓它自動掃描 DNS 記錄
- 調整 DNS 記錄 — 刪掉重複的 A 記錄,新增兩筆 CNAME 指向
cname.vercel-dns.com(根域名和 www 各一筆) - 在 Vercel 換 Nameservers — 把 Cloudflare 給你的兩個 nameserver 填進去,告訴全世界「DNS 現在由 Cloudflare 管」
- 開啟 Bot Fight Mode — Cloudflare Dashboard → 安全性 → Bot → 開啟
DNS 傳播約需 10 分鐘到 1 小時,之後保護就生效了。
一個你今天就可以做的決定
Cloudflare 免費方案、零程式碼、不需要升級 Vercel 方案。
你只需要把域名的 DNS 管理權交給 Cloudflare,它就坐在你網站前面幫你守著。你的網站繼續跑在 Vercel,訪客什麼感覺都不會有,但那些每天成千上萬次嘗試打進來的機器人,會在抵達你的伺服器之前就被擋掉。
網站上線的第一件事,應該是這個。
把這篇文章問 AI
還有疑問?把下面這段提示詞複製到 ChatGPT、Claude 或任何 AI,直接問你的問題:
我的網站部署在 Vercel,域名也是在 Vercel 購買的。
我想用 Cloudflare 免費方案保護網站、過濾惡意 Bot。
背景知識:
- Cloudflare 是一個全球代理網路,流量先經過它再到 Vercel
- 設定方式:把域名 DNS 管理權移交給 Cloudflare(換 Nameservers)
- DNS 記錄:刪除舊 A 記錄,新增 CNAME 指向 cname.vercel-dns.com
- 最後開啟 Bot Fight Mode
我的問題是:[在這裡輸入你的問題]