「Cloudflare」修訂間的差異
跳至導覽
跳至搜尋
(→HTTPS) |
|||
| (未顯示同一使用者於中間所作的 4 次修訂) | |||
| 行 1: | 行 1: | ||
[[分類:網路服務]]使用免費服務就夠了 | [[分類:網路服務]]使用免費服務就夠了 | ||
===抵擋爬蟲=== | ===抵擋爬蟲=== | ||
| − | 讓 '''wiki1231''' 的 LocalSettings.php 「$wgGroupPermissions['*']['read'] = false; // | + | 讓 '''wiki1231''' 的 LocalSettings.php 「$wgGroupPermissions['*']['read'] = false; // 禁止路人讀頁面」,但不由 Cloudflare 代管 |
'''再登入 cloudflare.com''': | '''再登入 cloudflare.com''': | ||
| 行 22: | 行 22: | ||
#*#:這條偶而使用 | #*#:這條偶而使用 | ||
# 「Caching / Cache rules」不要使用,會使得「分類樹」外掛的即時反應功能消失。 | # 「Caching / Cache rules」不要使用,會使得「分類樹」外掛的即時反應功能消失。 | ||
| − | # 會使得 file_get_contents(…) 也被 cloudflare 當成爬蟲阻擋,必須改用 file_get_contents(http | + | # 會使得 file_get_contents(…) 也被 cloudflare 當成爬蟲阻擋,必須改用 file_get_contents(http://localhost…) 取回資料。 |
====對 urclass.net 下 mediawiki 的干擾與應變==== | ====對 urclass.net 下 mediawiki 的干擾與應變==== | ||
| 行 29: | 行 29: | ||
* 在表 wiki_interwiki 的 iw_url 欄中以「http://urclass.net/目錄/index.php?title=$1」表達其他 mediawiki 會導致其他 mediawiki 的頁嵌入時被 cloudflare 當爬蟲擋: | * 在表 wiki_interwiki 的 iw_url 欄中以「http://urclass.net/目錄/index.php?title=$1」表達其他 mediawiki 會導致其他 mediawiki 的頁嵌入時被 cloudflare 當爬蟲擋: | ||
*# iw_url => 改以「http://well-being-ng.net/目錄/index.php?title=$1」表達其他 mediawiki ,而 well-being-ng.net 沒有交給 cloudflare 管,即可成功嵌入。 | *# iw_url => 改以「http://well-being-ng.net/目錄/index.php?title=$1」表達其他 mediawiki ,而 well-being-ng.net 沒有交給 cloudflare 管,即可成功嵌入。 | ||
| − | *# | + | *# 請求 mediawiki 的 index.php 時,並不會檢查 mediawiki 的 $wgServer 變數,只要 IP 對, index.php 就會被順利執行。 |
| + | *# 嵌入時, well-being-ng.net 表達的是同一個,即使不是 $wgServer ,也會將指定頁面抓過來嵌入。 | ||
===Purge(清除 Cloudflare 快取)=== | ===Purge(清除 Cloudflare 快取)=== | ||
| 行 36: | 行 37: | ||
===[[wbn::DNS|DNS]]=== | ===[[wbn::DNS|DNS]]=== | ||
| + | # 新增域名:「登入 Cloudflare / 網域 / 概覽 / 新增網域」 | ||
| + | # 管理域名:「登入 Cloudflare / 帳號首頁 / 點擊管理中的域名,如 urclass.net」 | ||
===[[wbn::HTTPS|HTTPS]]=== | ===[[wbn::HTTPS|HTTPS]]=== | ||
| − | # 由 Cloudflare | + | # 由 Cloudflare 代管域名,會由 Cloudflare 提供憑證,讓 https://… 可讀 |
# http://… 也仍維持可讀 | # http://… 也仍維持可讀 | ||
於 2026年4月27日 (一) 12:33 的最新修訂
使用免費服務就夠了
抵擋爬蟲
讓 wiki1231 的 LocalSettings.php 「$wgGroupPermissions['*']['read'] = false; // 禁止路人讀頁面」,但不由 Cloudflare 代管
再登入 cloudflare.com:
- 到「帳戶首頁」的「網域」,點入域名
- 查 DNS 記錄,確定「類型:A」的域名對應 IP 的記錄是「通過 Proxy 處理」(橙色),而不是「僅 DNS」
- 選擇「網路安全 / 設定」:
- 啟用 I'm Under Attack 模式
- 封鎖 AI 機器人範圍,設為「在所有網頁上封鎖」
- 選擇「網路安全 / 安全性規則」
- 自訂規則
- 規則名稱:protect-wiki
- ((http.request.uri.path contains "/alWiki") or (http.request.uri.path contains "/wellBeingNg")) and not cf.client.bot and not ip.src in {伺服器的 IPV4} 時採取 「受控的查問」
- 這條經常使用
- 規則名稱:block-bad-bots
- (http.user_agent contains "curl" or http.user_agent contains "wget" or http.user_agent contains "python" or http.user_agent contains "scrapy") 時採取 「封鎖」
- 這條極少使用
- 規則名稱:protect-wiki
- 限速規則
- 規則名稱:limit-wiki
- (http.request.uri.path contains "/alWiki") or (http.request.uri.path contains "/wellBeingNg") or (http.request.uri.path contains "/wiki1231") or (http.request.uri.path contains "/wikiGrade1") 時且使用相同的 IP / 每 10 秒請求 10 次 => 採取動作「封鎖 10 秒」
- 這條偶而使用
- 規則名稱:limit-wiki
- 自訂規則
- 「Caching / Cache rules」不要使用,會使得「分類樹」外掛的即時反應功能消失。
- 會使得 file_get_contents(…) 也被 cloudflare 當成爬蟲阻擋,必須改用 file_get_contents(http://localhost…) 取回資料。
對 urclass.net 下 mediawiki 的干擾與應變
- http:// 下的正常 wiki 登入被擋 => 改用 https:// 登入即可
- wiki1231 之下的各頁,因「路人禁讀」變成無法被其他 mediawiki 嵌入 => 改成在其他 mediawiki 做「真身」,而在 wiki1231 中嵌入真身
- 在表 wiki_interwiki 的 iw_url 欄中以「http://urclass.net/目錄/index.php?title=$1」表達其他 mediawiki 會導致其他 mediawiki 的頁嵌入時被 cloudflare 當爬蟲擋:
- iw_url => 改以「http://well-being-ng.net/目錄/index.php?title=$1」表達其他 mediawiki ,而 well-being-ng.net 沒有交給 cloudflare 管,即可成功嵌入。
- 請求 mediawiki 的 index.php 時,並不會檢查 mediawiki 的 $wgServer 變數,只要 IP 對, index.php 就會被順利執行。
- 嵌入時, well-being-ng.net 表達的是同一個,即使不是 $wgServer ,也會將指定頁面抓過來嵌入。
Purge(清除 Cloudflare 快取)
- 清除全部快取:「登入 cloudflare.com / 到「帳戶首頁」的「網域」,點入域名 / Caching / 設定 / 清除全部」
- 清除單個檔案快取:「登入 cloudflare.com / 到「帳戶首頁」的「網域」,點入域名 / Caching / 設定 / 自訂清除 / URL / 圖照網址」
DNS
- 新增域名:「登入 Cloudflare / 網域 / 概覽 / 新增網域」
- 管理域名:「登入 Cloudflare / 帳號首頁 / 點擊管理中的域名,如 urclass.net」
HTTPS
- 由 Cloudflare 代管域名,會由 Cloudflare 提供憑證,讓 https://… 可讀
- http://… 也仍維持可讀