679 字
3 分鐘
[Day8] Rules — 30 天入門 Cloudflare
2023-05-07
無標籤

當我們的網路流量進入 Cloudflare 後,我們可以修改裡面任何內容,再將網路流量反向代理到原始伺服器,本篇就來說說如何透過 Cloudflare Rules 來修改。

Cloudflare Rules 是 Cloudflare 的一項功能,它可以讓使用者根據不同的條件和規則,進行網路流量的自定義控制和管理。這些條件和規則可以基於各種不同的因素,例如瀏覽器的 User Agent、IP 地址、國家或地區等等。

Cloudflare Rules 可以根據不同的需求來進行設置,如阻止惡意流量、限制機器人訪問、防止 DDoS 攻擊、限制特定國家或地區的訪問、重新導向流量等等。更多Cloudflare Rules介紹可以參考官方文件


網頁規則#

網頁規則可讓您控制指定的 URL 會觸發哪些 Cloudflare 設定。每個 URL 只會觸發一個網頁規則,並支援正規表達式。

不同付費方案能用的規則數也不同,官方文件中提到免費版就只能有三筆。

如下範例,我建立一個網頁跳轉的規則,當有人造訪 a.twcanhelp.me 時,會自動302 跳轉到 Google。其他更多挑選設定可以再研究一下。


Configuration Rules#

接著講到 Configuration Rules,與上面網頁規則差異在於,網頁規則針對特定網址進行設定,Configuration Rules 可以設定在多個網域上,能調整的設定也不太一樣,可以參考官方文件


轉換規則#

轉換規則用來在邊緣調整要求和回應的 URI 路徑、查詢字串和 HTTP 標頭。意思是說可修改使用者進來的封包內容,再傳到後端伺服器。更多說明參考官方文件

主要有以下功能:改寫URL、修改要求標頭、修改回應標頭、受控轉換。試過會知道也不是什麼 header 都可以修改,有些較機敏的會被禁止修改。

受控轉換可以新增或移除一些 Cloudflare 提供的標頭。


重新導向轉接規則#

重新導向轉接規則可以設定多筆來源的 301、302 跳轉,網頁規則也有一樣的功能,較複雜的跳轉可以在這邊進行設定。


Origin Rules#

Origin Rules 可以修改目標的 port 不是到預設的 443port。


結語#

傳統上我們會在 NGINX、Apache、Caddy 上建立各種規則,在 Cloudflare 也能做到一樣的事情,如果要做到更複雜的邏輯,後續會介紹使用 Worker 來達成。

▶ 閱讀更多本系列文:30 天入門 Cloudflare

▶ 下一篇:[Day9] 網路與自訂網頁 — 30 天入門 Cloudflare