一個主域名 + Cloudflare Tunnel + N 個子域名:個人站長最省錢的架構
整理版優先睇
一個主域名加 Cloudflare Tunnel 就可以管理多個子域名,個人站長最慳錢嘅架構
呢篇文章係一個有十幾個域名嘅個人站長分享嘅經驗。佢以前覺得每個產品都要獨立域名先專業,結果有啲站已經停咗但仲要繼續續費。佢反思之後發現,其實好多業務可以用一個主域名加子域名搞掂,唔使花冤枉錢。
作者用一個生動嘅比喻:服務器係一棟樓,IP 地址係樓嘅地址,主域名係招牌,子域名係房間號,Cloudflare Tunnel 就係前台帶路。關鍵係子域名完全免費、數量無限,而且互相獨立。佢推薦用 Cloudflare Tunnel 嚟做反向代理,因為唔使開端口、自動 HTTPS、有免費 DDoS 防護,仲可以隱藏真實 IP。
整體結論係:對於大多數個人項目,一個主域名 + 多個子域名 + Cloudflare Tunnel 就夠用,又安全又慳錢。除非係品牌隔離、風險隔離或者 SEO 需要,否則唔使買新域名。
- 用一個主域名加子域名已經可以滿足大部分個人項目,慳返唔少域名續費錢。
- Cloudflare Tunnel 自動處理 HTTPS 同 DDoS 防護,服務器唔使開放任何對外端口。
- 子域名之間係獨立嘅,一個出問題唔會影響其他,而且免費冇數量限制。
- 唔好盲目買新域名,除非要品牌隔離、合規隔離或者未來有出售計劃。
- 加新子域名只需喺 Cloudflare 控制枱填幾行配置,幾秒鐘就生效,唔使改服務器設定。
域名同子域名嘅關係:一個招牌加幾個房間號
一個主域名可以衍生無限個子域名,而且唔使額外俾錢。作者用類比解釋:服務器係一棟樓,IP 地址係樓嘅地址,主域名係樓外嘅招牌(example.com),子域名就係入面嘅房間號(shop、admin、proxy)。Cloudflare Tunnel 就係前台,負責帶訪客去啱嘅房間。
子域名數量不受限制,喺 Cloudflare 加一行 DNS 記錄就得,對服務器冇任何資源消耗。
子域名之間相互獨立,一個俾人攻擊唔會影響其他。主站用 example.com,代理站用 proxy.example.com,兩個獨立入口,共享同一伺服器。
Cloudflare Tunnel:唔使暴露端口嘅安全方案
作者以前手動搞 SSL 續期、Nginx 反向代理、防火牆規則,仲要擔心 SSH 爆破同 DDoS。用 Cloudflare Tunnel 之後,所有麻煩嘢都慳返。
關鍵係「主動連接」:伺服器主動建立加密隧道去 Cloudflare 邊緣節點,唔需要開放任何對外端口。
呢啲優勢令到個人站長可以專注開發,唔使花時間喺維護基礎設施。
實際部署同好處:一個伺服器,多個服務入口
最終架構係:用戶訪問 example.com 或 proxy.example.com → Cloudflare 邊緣網絡(免費 HTTPS + CDN + DDoS)→ 加密隧道 → 你嘅 VPS。VPS 入面有 cloudflared 守護進程,將流量分發到唔同端口。例如 example.com 轉去 3000 端口,proxy.example.com 轉去 8000 端口。
加新站只需喺 Cloudflare 控制枱填一行配置,唔使修改伺服器、唔使調整防火牆、唔使買新 VPS。
1. 打開 https://one.dash.cloudflare.com
2. 左邊菜單 Networks → Tunnels
3. 揾到你嘅 tunnel → 點入去 → Public Hostname 標籤
4. 點 Add a public hostname
5. 填寫配置:
Subdomain: 例如 proxy
Domain: 揀你嘅主域名
Service Type: HTTP 或 HTTPS
URL: localhost:8001(服務嘅內網地址同端口)
6. 保存 → 幾秒生效
Service URL 一定要填伺服器內部地址,唔好填域名,否則會循環跳轉。
咩情況下先需要買新域名?
雖然子域名夠用,但有幾種情況建議買獨立主域名:目標市場唔同(例如 .jp、.cn)、業務性質差異大(例如定位同受眾完全唔同)、法律同合規要求(唔同法律主體或高風險業務)、將來可能出售(獨立域名易打包)。
除咗呢啲特殊情況,一個主域名加子域名加 Cloudflare Tunnel 可以滿足絕大多數個人項目。
作者提醒,子域名同子路徑嘅選擇:子域名適合獨立部署同品牌;子路徑適合集中 SEO 權重。代理站呢類相對獨立嘅服務,用子域名更合適。

一個域名夠用咩?
有位粉絲朋友喺後台問:
為啥每次起一個站都要買一個域名?
如果兩個站都喺同一部伺服器上面,而且係代理同被代理嘅關係,可唔可以共用一個域名?
我最初都係咁做,覺得一個產品就應該配一個獨立域名先顯得專業,跟住手上面就keep咗十幾個域名。
其實有幾個網站一早冇再維護,但係域名仲係keep住續費。
之後我諗咗下,其實有一啲業務,一個主域名加子域名就夠。呢篇文章我會講:
域名同子域名嘅關係
幾時先真係要買新域名
幾時用子域名就已經解決到問題

一、域名同子域名嘅關係
可以用一個簡單嘅比喻嚟理解:
服務器係一棟樓
IP 地址係棟樓嘅物理地址
主域名係樓外面嘅招牌(
example.com)子域名係樓入面嘅房號(301、302、303)
Cloudflare Tunnel 相當於前台,負責帶訪客去對應嘅房間
明白咗呢個結構之後,有幾個重點:
1. 子域名數量冇限制
喺 Cloudflare 加一個子域名,只係喺 DNS 記錄度加一行設定,對伺服器本身冇任何資源消耗。
2. 子域名完全免費
域名註冊商收費嘅係主域名,買咗主域名之後,你可以自由建立任意數量嘅子域名,唔需要額外俾錢。
3. 子域名互相獨立
一個子域名出現問題(例如俾人攻擊),唔會影響到其他子域名嘅正常運作。
💡 代理站同主站喺同一部伺服器上面,呢個正正係用子域名嘅典型場景。
主站用
example.com,代理站用proxy.example.com,兩個獨立嘅訪問入口,共享同一部伺服器資源。
二、子域名嘅實際應用
主域名(例如 example.com)係你從註冊商買嘅,需要按年俾錢。
⚠️ 呢個係唯一需要俾錢嘅部分。
子域名係喺主域名前面加前綴:
呢啲子域名全部免費,建立過程只需要幾秒鐘。我自己喺一個主域名下面建立咗二十幾個子域名,冇任何額外費用。
幾時需要買新嘅主域名?
主要係呢幾種情況:
品牌隔離 — 針對唔同市場嘅產品(例如國內同海外),用獨立域名更加有利於建立本地信任感。
風險隔離 — 如果某啲業務存在合規風險,獨立域名可以避免一個站點出事影響到整個域名體系。
SEO 考慮 — 獨立域名喺搜尋引擎上面嘅權重係獨立計算嘅,呢點喺某啲場景下有優勢。
💡 除咗呢幾種特殊情況,大部分場景用子域名就夠。
對於「代理站 + 主站」呢種同一部伺服器、相關業務嘅情況,用子域名係最合理嘅選擇。
三、點解推薦 Cloudflare Tunnel
唔用 Cloudflare Tunnel 都得,但要自己搞掂呢啲嘢:
申請同續期 SSL 證書(Let's Encrypt 需要定期續期)
設定 Nginx 反向代理、防火牆規則、限流策略
開放 80、443 port,暴露公網 IP
應對 SSH 暴力破解同各種掃描攻擊
自行承擔 DDoS 攻擊嘅風險
我初期係手動設定呢啲嘢,後來改用 Cloudflare Tunnel,省咗好多維護工夫。
運作原理
喺伺服器上面執行 cloudflared 程式,佢會主動建立一條加密連線去 Cloudflare 嘅邊緣節點。
用戶訪問域名嗰陣,流量先去到 Cloudflare,再經呢條隧道轉發到伺服器。
🔑 關鍵係「主動連接」——伺服器唔需要開放任何對外埠,外部掃描見到嘅係一個完全關閉嘅伺服器。
主要優勢
1. 隱藏真實 IP
用戶 ping 域名得到嘅係 Cloudflare 嘅 IP,就算知你真實 IP 都無法直接訪問。
2. 自動 HTTPS 證書
包括通配符證書,覆蓋所有子域名。
3. 免費 DDoS 防護
Cloudflare 嘅免費套餐可以應對大部分流量攻擊。
4. 唔需要開放埠
伺服器只需要保持一個出站連線,大大提升安全性。
四、我實際部署係咁樣
Cloudflare Tunnel 負責流量分發:
用戶訪問
example.com→ 轉發到 3000 port用戶訪問
proxy.example.com→ 轉發到代理服務
一部伺服器、多個服務入口,彼此獨立運作。
✨ 呢種架構仲有一個好處:加新站直接喺 Cloudflare 控制枱填一行設定就可以上線,唔使改伺服器、唔使校防火牆、唔使買新 VPS。
呢種靈活性對於個人項目嚟講好實用。
五、加子域名嘅具體步驟
步驟:
打開 https://one.dash.cloudflare.com
左邊菜單 Networks → Tunnels
揾到你嘅 tunnel → 撳入去 → Public Hostname 標籤
點 Add a public hostname
填寫設定:
Subdomain: 例如
proxyDomain: 揀你嘅主域名
Service Type:
HTTP或HTTPSURL:
localhost:8001(你服務嘅內網地址同 port)儲存 → 幾秒生效

⚠️ 常見問題:Service URL 填嘅係伺服器內部地址,唔係公網地址。
因為流量已經經隧道入到伺服器,只需要指定本地 port 就得。
如果填錯咗做域名,會導致循環跳轉。
六、常見問題
Q:子域名生效要等幾耐?
Cloudflare 嘅 DNS 通常喺幾秒到幾分鐘內生效,唔需要等 24 小時。
Q:子域名數量有限制咩?
Cloudflare 免費版提供 1000 條 DNS 記錄,對個人項目嚟講完全夠用。
Q:域名註冊費用包啲乜?
註冊費係主域名嘅使用權費用。買咗主域名之後,可以免費建立任意數量嘅子域名。
Q:更換主域名複雜咩?
喺 Cloudflare 加新域名,重新設定 tunnel 嘅 hostname 映射。
伺服器端主要係修改環境變數(例如 Django 嘅 ALLOWED_HOSTS 和 CSRF_TRUSTED_ORIGINS),同埋前端代碼入面硬編碼嘅 URL。
通常半日可以搞掂。
Q:唔同子域名會被搜尋引擎當成同一個站點咩?
唔會。搜尋引擎會將唔同子域名視為獨立站點,權重分別計算。
如果唔想某個子域名被索引,可以透過 robots.txt 屏蔽。
Q:子域名之間會共享 cookie 咩?
默認唔會。但如果設定 cookie 時指定咗 domain=.example.com(注意前面嘅點),咁所有子域名都可以存取該 cookie。
呢個適合做單點登入,但亦都意味住一個子域名嘅安全問題可能會影響到其他子域名。
Q:一個子域名出事會影響其他子域名咩?
唔會。子域名技術上係獨立嘅,一個被屏蔽或者被攻擊唔會直接影響其他子域名。
Q: Cloudflare Tunnel 嘅可靠性點樣?cloudflared 進程係單點,如果佢停止運行,所有經佢嘅站點都會下線。
建議用 systemd 或者 Docker 設定自動重啟,或者設定 Tunnel Replicas 實現冗餘。
Q:子域名同子路徑應該點樣揀?
子域名(如
admin.example.com):適合獨立部署、獨立品牌子路徑(如
example.com/blog):適合集中 SEO 權重、業務緊密相關
對於代理站呢類相對獨立嘅服務,子域名更加合適。
Q:可以用通配符子域名咩?
可以。Cloudflare Tunnel 支援通配符設定(例如 *.example.com),適合需要動態子域名嘅場景(例如多租户 SaaS)。
免費版嘅通配符 SSL 證書支援一級子域名。
七、幾時需要買新域名
雖然子域名可以解決大部分問題,但以下幾種情況都係建議買獨立嘅主域名:
目標市場唔同
針對唔同國家或地區嘅產品,用對應嘅頂級域名(例如 .jp、.cn)可以提升本地用戶嘅信任度。
業務性質差異大
如果兩個業務嘅定位、受眾完全唔同,用獨立域名更加合適。
法律同合規要求
唔同法律主體嘅業務,或者有合規風險嘅業務,應該用獨立域名隔離。
未來可能出售
獨立域名更加容易作為資產打包出售。
💡 除咗呢啲特殊情況,一個主域名 + 子域名 + Cloudflare Tunnel 嘅組合可以滿足絕大多數個人項目嘅需求,既慳成本,又方便管理。

一個域名夠用嗎?
有粉絲朋友後台問:
為啥每建一個站都要買一個域名?
如果兩個站都在同一台服務器上,而且是代理和被代理的關係,能不能共用一個域名?
我最開始也是這麼搞的,就是覺得一個產品就應該配一個獨立的域名才顯得專業,然後手裏就存了十幾個域名。
其實有幾個站早就沒有繼續維護了,但是域名還在續費。
後面我就想了一下,其實有一些業務,一個主域名加上子域名就夠了。這篇文章我會講一下:
域名跟子域名的關係
什麼時候真的要買新域名
什麼時候用子域名就能解決問題

一、域名和子域名的關係
可以用一個簡單的類比來理解:
服務器是一棟樓
IP 地址是樓的物理地址
主域名是樓外的招牌(
example.com)子域名是樓內的房間號(301、302、303)
Cloudflare Tunnel 相當於前台,負責把訪客引導到對應房間
理解這個結構後,有幾個關鍵點:
1. 子域名數量不受限制
在 Cloudflare 添加一個子域名,只是在 DNS 記錄里加一行配置,對服務器本身沒有任何資源消耗。
2. 子域名完全免費
域名註冊商收費的是主域名,買下主域名後,你可以自由創建任意數量的子域名,不需要額外付費。
3. 子域名相互獨立
一個子域名出現問題(比如被攻擊),不會影響到其他子域名的正常運行。
💡 代理站和主站在同一台服務器上,這正是使用子域名的典型場景。
主站用
example.com,代理站用proxy.example.com,兩個獨立的訪問入口,共享同一個服務器資源。
二、子域名的實際應用
主域名(比如 example.com)是你從註冊商購買的,需要按年付費。
⚠️ 這是唯一需要花錢的部分。
子域名是在主域名前添加前綴:
這些子域名全部免費,創建過程只需要幾秒鐘。我自己在一個主域名下創建了二十多個子域名,沒有任何額外費用。
什麼時候需要購買新的主域名?
主要是這幾種情況:
品牌隔離 — 面向不同市場的產品(比如國內和海外),使用獨立域名更有利於建立本地信任感。
風險隔離 — 如果某些業務存在合規風險,獨立域名可以避免一個站點出問題影響到整個域名體系。
SEO 考慮 — 獨立域名在搜索引擎中的權重是獨立計算的,這在某些場景下有優勢。
💡 除了這幾種特殊情況,大部分場景用子域名就足夠了。
對於“代理站 + 主站”這種同服務器、相關業務的情況,用子域名是最合理的選擇。
三、為什麼推薦 Cloudflare Tunnel
不用 Cloudflare Tunnel 也可以,但需要自己處理這些事情:
申請和續簽 SSL 證書(Let‘s Encrypt 需要定期續簽)
配置 Nginx 反向代理、防火牆規則、限流策略
開放 80、443 端口,暴露公網 IP
應對 SSH 暴力破解和各種掃描攻擊
自行承擔 DDoS 攻擊的風險
我早期是手動配置這些的,後來改用 Cloudflare Tunnel,省去了大量維護工作。
工作原理
在服務器上運行 cloudflared 程序,它會主動建立一條加密連接到 Cloudflare 的邊緣節點。
用戶訪問域名時,流量先到達 Cloudflare,再通過這條隧道轉發到服務器。
🔑 關鍵是“主動連接”——服務器不需要開放任何對外端口,外部掃描看到的是一個完全封閉的服務器。
主要優勢
1. 隱藏真實 IP
用戶 ping 域名得到的是 Cloudflare 的 IP,即使知道你的真實 IP 也無法直接訪問。
2. 自動 HTTPS 證書
包括通配符證書,覆蓋所有子域名。
3. 免費 DDoS 防護
Cloudflare 的免費套餐可以應對大部分流量攻擊。
4. 無需開放端口
服務器只需要保持一個出站連接,大幅提升安全性。
四、我的實際部署長這樣
Cloudflare Tunnel 負責流量分發:
用戶訪問
example.com→ 轉發到 3000 端口用戶訪問
proxy.example.com→ 轉發到代理服務
一台服務器、多個服務入口,彼此獨立運行。
✨ 這種架構還有一個好處:加新站直接在 Cloudflare 控制枱填一行配置就能上線,不用修改服務器、不用調整防火牆、不用購買新 VPS。
這種靈活性對個人項目來說很實用。
五、加子域名的具體步驟
步驟:
打開 https://one.dash.cloudflare.com
左邊菜單 Networks → Tunnels
找到你的 tunnel → 點進去 → Public Hostname 標籤
點 Add a public hostname
填寫配置:
Subdomain: 比如
proxyDomain: 選你的主域名
Service Type:
HTTP或HTTPSURL:
localhost:8001(你服務的內網地址和端口)保存 → 幾秒生效

⚠️ 常見問題:Service URL 填的是服務器內部地址,不是公網地址。
因為流量已經通過隧道進到服務器了,只需要指定本地端口即可。
如果填成了域名,會導致循環跳轉。
六、常見問題
Q:子域名生效需要等待多久?
Cloudflare 的 DNS 通常在幾秒到幾分鐘內生效,不需要等待 24 小時。
Q:子域名數量有限制嗎?
Cloudflare 免費版提供 1000 條 DNS 記錄,對個人項目來說完全夠用。
Q:域名註冊費用包含什麼?
註冊費是主域名的使用權費用。購買主域名後,可以免費創建任意數量的子域名。
Q:更換主域名複雜嗎?
在 Cloudflare 添加新域名,重新配置 tunnel 的 hostname 映射。
服務器端主要是修改環境變量(如 Django 的 ALLOWED_HOSTS 和 CSRF_TRUSTED_ORIGINS),以及前端代碼中硬編碼的 URL。
通常半天可以完成。
Q:不同子域名會被搜索引擎視為同一個站點嗎?
不會。搜索引擎將不同子域名視為獨立站點,權重分別計算。
如果不希望某個子域名被索引,可以通過 robots.txt 屏蔽。
Q:子域名之間會共享 cookie 嗎?
默認不會。但如果設置 cookie 時指定了 domain=.example.com(注意前面的點),則所有子域名都可以訪問該 cookie。
這適合做單點登錄,但也意味着一個子域名的安全問題可能影響到其他子域名。
Q:一個子域名出問題會影響其他子域名嗎?
不會。子域名在技術上是獨立的,一個被屏蔽或攻擊不會直接影響其他子域名。
Q:Cloudflare Tunnel 的可靠性如何?cloudflared 進程是單點,如果它停止運行,所有通過它的站點都會下線。
建議用 systemd 或 Docker 設置自動重啓,或者配置 Tunnel Replicas 實現冗餘。
Q:子域名和子路徑該如何選擇?
子域名(如
admin.example.com):適合獨立部署、獨立品牌子路徑(如
example.com/blog):適合集中 SEO 權重、業務緊密相關
對於代理站這種相對獨立的服務,子域名更合適。
Q:可以使用通配符子域名嗎?
可以。Cloudflare Tunnel 支持通配符配置(如 *.example.com),適合需要動態子域名的場景(比如多租户 SaaS)。
免費版的通配符 SSL 證書支持一級子域名。
七、什麼時候需要購買新域名
雖然子域名可以解決大部分問題,但以下幾種情況還是建議購買獨立的主域名:
目標市場不同
面向不同國家或地區的產品,使用對應的頂級域名(如 .jp、.cn)可以提升本地用戶的信任度。
業務性質差異大
如果兩個業務的定位、受眾完全不同,使用獨立域名更合適。
法律和合規要求
不同法律主體的業務,或者存在合規風險的業務,應該使用獨立域名隔離。
未來可能出售
獨立域名更容易作為資產打包出售。
💡 除了這些特殊情況,一個主域名 + 子域名 + Cloudflare Tunnel 的組合可以滿足絕大多數個人項目的需求,既節省成本,又便於管理。
