[WordPress] 禁止網站對外請求的方法

話說在前頭,這只適用當主題與外掛都使用 WordPress HTTP API 來做請求的時候。其他自幹發請求的作法(cURL, file_get_contents..)只能統一設定防火牆將對外出口 Port 給封鎖。

方法: 將這段 define( 'WP_HTTP_BLOCK_EXTERNAL', true ); 放置在 wp-config.php 檔案中,預設就會阻止全部的對外請求,內建的請求大多為各種檢查更新,如果有希望部分放行的話需要再補這段 define( 'WP_ACCESSIBLE_HOSTS', 'api.wordpress.org,*.github.com' ); 添加其他可以通過的主機。

需要這些方法的情境比較特殊,本機開發下如果在網路環境不好的狀態可以使用這個做法避免多餘的請求,再來還有就是如果主機環境其實有防火牆封鎖對外請求的時候,沒有乾脆自己先阻擋請求,反而會讓網站載入變慢與卡住,因為都在等請求超時(timeout)才會有後續的操作發生。

通常都是把這套架構放置在內網作業時會發生,至於其他沒有使用 HTTP API 方式操作的外掛或主題,只能一個一個去掃描請求來做阻擋,阻擋方式除了指定主機解析路徑外,可能就要硬幹去從程式中改變行為。

做過一次就會知道 WordPress 是一個沒對外網路會有問題的系統(誰家網站不是啊!?)XD 怎麼看待眼前這個工具的彈性是人,不要被限制住想像了~

#WordPress #HTTP #API #BlockRequest #技術相關 #封鎖請求

- Powered by Mxp.TW -FB2WP-

Facebook 外掛整合


Share: