SSL 代理問題 (Network Solutions)
堅持使用代理 SSL 的主機商(例如 Network Solutions)會導致 WordPress 和 WooCommerce 產生問題,因為這會阻止 PHP 和 WordPress 的 is_ssl() 函數偵測頁面是否透過 HTTPS 提供。這會導致重新導向迴圈。
Network Solutions® 使用代理 SSL,這不允許使用伺服器端變數來偵測 HTTPS(安全連線)。所有伺服器端程式碼將始終偵測到 HTTP(非安全連線),對於嘗試將非安全連線(http://)重新導向至安全連線(https://)的程式,將導致無限迴圈,並在 30 秒後出現伺服器錯誤。
Network Solutions 自 2007 年以來就知道此限制,因此不要期待政策會很快改變。
PHP 中沒有解決方法(http://stackoverflow.com/questions/4686668/https-redirect-for-network-solutions)。唯一的解決方法是:
- 關閉 WooCommerce 中的強制 SSL 設定
- 使用 Javascript 重新導向至 SSL
Network Solutions 自己的解決方案是 JavaScript:
<script language="javascript">
if (document.location.protocol != "https:")
{
document.location.href = "https://subdomain.yourdomain.com" + document.location.pathname;
};
</script>
請注意,我們無法正式支援此非標準設定。