旅宿詢問表單的垃圾郵件防護|與AI安全設定與確認的方法

旅宿主人與AI攔截詢問表單的垃圾提交,讓正常詢問進入收件匣的插畫 AI 網站管理

旅宿的詢問表單有時會收到推銷訊息、看不懂的文字,或相同內容的連續提交。數量一多,就可能漏看真正的住宿諮詢。

但垃圾郵件防護太強,也可能擋住客人的詢問。旅宿網站重要的不是讓垃圾提交歸零,而是在維持能收到真實詢問的狀態下減輕負擔。

本文說明不熟悉IT的旅宿經營者,如何請Codex或Claude Code協助調查,依順序安全採取措施。

結論:不要一開始就增加外掛

請依以下順序進行。

  1. 記錄哪個表單收到多少垃圾提交
  2. 確認目前表單與既有垃圾郵件防護
  3. 變更前先備份並測試正常提交
  4. 只新增一種措施
  5. 使用PC、智慧型手機及不同電子郵件地址重新測試
  6. 持續一段時間確認誤判與詢問件數

若同時新增多個外掛、CAPTCHA及禁用詞,就無法知道是哪一項擋住了正常詢問。

先統計垃圾郵件情況

先用大約1週,只記錄以下項目。不需要將內文或電子郵件地址貼給AI。

確認項目 紀錄範例
目標表單 詢問、預約諮詢、徵才
垃圾提交件數 每1天約10件
集中時段 深夜較多
相同內容連續提交 有、無
疑似真實詢問被誤判 有、無、不明
目前措施 不明、Akismet、Turnstile等

數量少卻導入複雜機制,有時只會增加維護對象。先統計現況,再決定需要的強度。

確認目前使用的表單

WordPress的Contact Form 7、Jetpack表單、WPForms等,各自設定位置及支援的垃圾郵件防護不同。先請AI不做變更,調查以下內容。

  • 建立表單的外掛名稱與版本
  • 詢問表單所在的URL
  • 已啟用的垃圾郵件防護
  • 是否在WordPress內保存提交內容
  • 給旅宿的通知地址,以及是否有給客人的自動回覆
  • 隱私權政策目前的內容

若提供管理畫面截圖,要遮蔽電子郵件地址、API金鑰、詢問內文及預約者資訊。

從三個層次思考防護

1. 人不容易看見的簡單陷阱

若自動提交程式填入人通常不會輸入的欄位,就拒絕該提交,這種機制一般稱為蜜罐。它不太會增加客人的操作,但無法阻止全部自動提交。

只有目前的表單功能正式支援時,才列為候選措施。不要把來源不明的程式碼直接貼進佈景主題。

2. 判斷提交內容的服務

Akismet等會根據提交內容判斷垃圾提交。依表單外掛而定,可能需要額外設定,也要確認契約條件及資料處理方式。

是否有檢視誤判的畫面、是否能把正常詢問恢復為「不是垃圾訊息」,也是選擇條件。

3. 同時在瀏覽器與伺服器確認的機制

Cloudflare Turnstile、Google reCAPTCHA等,也會在伺服器端驗證瀏覽器端發出的確認資訊。Cloudflare官方資料說明,即使網站沒有使用Cloudflare作為CDN,也能使用Turnstile。

只在畫面顯示元件,並不表示防護完成。請透過相容外掛的官方程序或驗證環境,確認有執行伺服器端驗證。

選擇Turnstile時的確認事項

Turnstile使用公開的sitekey,以及不能向外揭露的secret key。不要把secret key放進文章、聊天、Git或瀏覽器端程式碼。

導入前確認以下內容。

  • 目前表單外掛是否正式支援
  • 是否能分開正式與驗證環境的設定
  • 是否已限制目標網域
  • 是否在伺服器端驗證權杖
  • 暫時通訊故障時,是否能清楚告知
  • 智慧型手機與舊裝置是否也能提交

Cloudflare官方說明,權杖在5分鐘後失效,且只能驗證一次。填寫表單花較久時間時的重試,也是測試對象。

謹慎使用禁用詞與IP位址封鎖

拒絕特定詞語或來源的功能很方便,但若登記短而常見的詞,也會擋住真實詢問。旅客使用的行動網路或共用網路,不宜只憑IP位址就廣泛拒絕。

使用禁用詞時,記錄新增原因、核准者、新增日期、誤判時的移除方法及預計檢討日期。可請AI整理候選詞,但實際登記由人確認。

測試是否擋住正常詢問

變更前後進行相同測試。

  1. 從PC提交簡短的日文詢問
  2. 從智慧型手機的行動網路提交
  3. 提交較長的文字
  4. 確認給旅宿的通知
  5. 確認給客人的自動回覆
  6. 若在WordPress內保存,確認紀錄
  7. 也確認垃圾郵件判定畫面

測試內文寫上「功能確認、不需回覆」,不要使用真實客人的資訊。為避免無法提交時失去聯絡管道,頁面應提供電話等其他方式。不要在錯誤畫面顯示內部資訊或詳細判定原因。

保留發現誤判的機制

導入垃圾郵件防護後,也要持續查看被判定的內容。

  • 導入後最初1週每天確認
  • 穩定後仍定期確認垃圾判定
  • 疑似住宿諮詢的內容由人判斷
  • 若有恢復誤判的功能,正確恢復
  • 決定保存期間,不持續保留不必要的個人資料

Contact Form 7的垃圾判定與郵件寄送失敗,有時會出現相似的錯誤顯示。不要只看顯示就斷言原因,應確認可用紀錄檔與測試結果。

也確認隱私權政策

新增外部判定服務,可能改變表單提交時處理的資訊或傳送對象。確認服務的官方隱私資訊,必要時更新自己網站的隱私權政策。

WordPress可指定隱私權政策頁面並編輯內容,但自動產生的文字不一定足夠。請依旅宿實際使用的表單、流量分析及垃圾郵件防護確認。需要法律判斷時,向專家諮詢。

AI可以做的工作與由人判斷的工作

適合交給AI的工作包括:調查使用中的功能及官方資料、比較措施、建立測試項目、統計去除個人資料的件數,以及整理可能原因與回復方法。

外部服務簽約、個人資料處理、secret key發行與保管、正式套用的核准,以及真實詢問的判斷與回覆,由人負責。不需要一開始就把WordPress管理員權限或外部服務全部權限交給AI。

可複製使用的AI委託內容

先不變更,只調查

旅宿WordPress詢問表單的垃圾郵件增加了。
請先不要變更設定。

請以唯讀方式確認使用中的表單功能、目前有效的垃圾郵件防護、
詢問保存位置、正常提交的確認方法,
以及官方資料。

不要輸出秘密資訊、詢問內文或電子郵件地址,
不明項目不要推測,請標示「不明」。

比較措施

請針對目前表單架構,比較蜜罐、Akismet、
Cloudflare Turnstile及Google reCAPTCHA等候選措施。

依官方資料確認對正常詢問的影響、支援情況、費用、個人資料、維護負擔、
誤判確認方法,以及回復原狀的方法。
請先不要安裝或變更設定。

只導入一種並驗證

請在驗證環境只設定一種已核准的垃圾郵件防護。
先列出變更前備份、變更位置、秘密資訊保存位置及回復方法。

設定後,使用PC與智慧型手機驗證正常提交、自動回覆、旅宿通知,
以及誤判確認方法。不要變更正式環境。

旅宿經營者檢查清單

  • [ ] 已掌握垃圾郵件件數與目標表單
  • [ ] 已確認表單功能與既有措施
  • [ ] 已保留變更前正常提交結果
  • [ ] 已確認備份與回復方法
  • [ ] 每次只新增一種措施
  • [ ] 沒有在畫面分享或與AI的對話中放入secret key
  • [ ] 已確認伺服器端驗證是否有效
  • [ ] 已使用PC與智慧型手機測試
  • [ ] 已確認旅宿通知與自動回覆兩者
  • [ ] 已決定誤判確認負責人與頻率
  • [ ] 已確認隱私權政策
  • [ ] 已提供電話等替代聯絡方式

郵件收不到的問題,可參考確認WordPress詢問郵件寄件、收件與驗證的方法。設定變更前的判斷,可參考正式公開前檢查清單;故障初步應變可參考WordPress故障後的最初30分鐘。

參考資訊

總結

旅宿詢問表單,需要同時兼顧減少垃圾郵件及接收真實詢問。

先統計現況、確認使用中的表單、取得備份,只新增一種措施。之後,使用不同裝置與網路確認正常提交,並定期檢討誤判。AI可協助調查、比較、測試與記錄,但秘密資訊、個人資料及真實詢問的判斷,請由旅宿自行管理。

已複製標題與網址