問題描述

我有一個使用 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 主題,不知道你是否已經看過它:

Theme Customizer Problem

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。