問題描述
它需要連線到 wordpress.org 並且超時。我在企業防火牆後面。在以前的版本中,我從來沒有遇到這個問題。為什麼 themes.php 需要訪問 wordpress.org,我該怎麼辦,所以它不會 (或者也許會讓我使用我的代理設定) 。
新增錯誤訊息:
PHP Warning: An unexpected error occurred. Something may be wrong with WordPress.org or this server』s configuration. If you continue to have problems, please try the support forums. (WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.) in C:inetpubwwwrootticketwp-adminincludestheme.php on line 298
這對 3.7 來說肯定是新的。我們有 3.6.1 安裝了 4-5 次,沒有問題。如果他們不能改變主題,我會有人斬首。
更新:3.8 修復了很多主要問題。但是,我們仍然無法找到外掛,查詢主題或獲取資訊板 Feed 。如果有人有這個解決方案 – 即使它是代理伺服器的建議,那將是有幫助的。
最佳解決方案
導航 WP 管理員通常會觸發多個外部請求,例如獲取新聞源和主題/外掛更新 (不計算任何外掛/主題可能在自己做的) 。
您可以將配置常量放入 wp-config.php 以完全/部分阻止外部請求:
define( 'WP_HTTP_BLOCK_EXTERNAL', true );
define( 'WP_ACCESSIBLE_HOSTS', 'api.wordpress.org,*.github.com' );
或者配置外部請求以使用您的代理設定:
define('WP_PROXY_HOST', '192.168.84.101');
define('WP_PROXY_PORT', '8080');
define('WP_PROXY_BYPASS_HOSTS', 'localhost, www.example.com, *.wordpress.org');
加 WP_PROXY_USERNAME 和 WP_PROXY_PASSWORD 進行認證。
次佳解決方案
這是 WordPress 的 HTTP API 更改的問題。它不再與 cURL 完全相容。我不知道為什麼會發生這種情況 (沒有提供上下文資訊,發生此錯誤時),但您可以新增臨時修復。
在外掛中,或在 wp-config.php 的最後,新增以下行:
add_filter( 'http_api_transports', function()
{
return array( 'streams' );
});
這將停用 cURL 並使錯誤訊息消失,而不影響伺服器上的其他元件。
為了完整,在這裡我目前的 cURL 細節:
$ curl --version
curl 7.26.0 (i686-pc-mingw32) libcurl/7.26.0 OpenSSL/0.9.8x zlib/1.2.7
Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtsp smtp smtps telnet tf
tp
Features: GSS-Negotiate Largefile NTLM SSL SSPI libz
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。