問題描述
我有一個使用 Comodo SSL 證書的 WordPress 安裝。我安裝了 WordPress HTTPS plugin,我正在使用 AZ 主題,並且管理員設定為透過 HTTPS 載入。到現在為止還挺好。
在主題定製器上,我得到一個永久載入的圖示 (不要與 WSOD 混淆) 。回收首頁內容的 AJAX 呼叫是空的,儲存為 WP_CUSTOMIZER_SIGNATURE 令牌。這就是所有的回應包括。當我停用 WordPress HTTPS 外掛 (或以其他方式停用透過 SSL 載入管理員) 時,自定義工具很好。停用/啟用其他外掛無效。這發生在股票二十五主題 (如下圖) 。
以下是我在 Firebug 中看到的螢幕截圖 (並且可以在瀏覽器以及 Browserstack VM 中重現):
如果它是相關的,該站點託管在 DigitalOcean 小滴上,使用 ServerPilot 。我有其他 WordPress 網站託管在同一個液滴上,另一個 SSL-enabled 顯示相同的行為。 ModSecurity 沒有安裝,據我所知,我得到一個 200 狀態程式碼,所以我不認為它是 this issue 。
另外,SHA-1 訊息似乎是一個假陽性,只要我能告訴 (我不認為 Firefox 還沒有阻止基於 SHA-1 使用的內容嗎?) 。我不認為它是 zlib.output_compression bug,因為我已經明確地將其關閉測試,並嘗試在該票證中列出的修補程式,這是沒有工作。
我沒有找到任何與我的問題相匹配的東西,這讓我覺得有一些我所忽視的愚蠢的東西。任何幫助非常感謝,請讓我知道什麼額外的資訊可能有幫助。
最佳解決方案
根據你的問題,我認為這是你用來啟用 SSL 的外掛:WordPress HTTPS 。
考慮到外掛尚未在兩年內更新,並且其支援問題尚未解決,最新版本的 WordPress 可能會出現一些相容性問題 (在撰寫本文時為 4.6) 。我的建議是確保您的網站的 URL 在任何地方都執行。
這可以透過在資料庫中執行以下 SQL 查詢來完成 (phpMyAdmin):
UPDATE wp_options SET option_value = replace(option_value, 'HTTP_URL', 'HTTPS_URL') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'HTTP_URL','HTTPS_URL');
UPDATE wp_posts SET post_content = replace(post_content, 'HTTP_URL', 'HTTPS_URL');
UPDATE wp_postmeta SET meta_value = replace(meta_value,'HTTP_URL','HTTPS_URL');
將值替換為以下內容:
-
HTTP_URL> 您的 HTTP 連結 (http://some.site) -
HTTPS_URL您的 HTTPS 連結 (https://some.site)
這樣,它可以防止任何 mixed-content 連結破壞事物。我也發現一個類似問題的 WordPress 主題,不知道你是否已經看過它:
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。
