2015-07-13 36 views
0

我有一個基於CodeIgniter框架構建的商業網站。 cart控制器用於生成購物車內容的數據 並將其加載到兩個視圖中的一個視圖中:完整的購物車頁面或其他頁面內的側欄(在這種情況下,將sidecart視圖調用到指定的div通過ajax)。控制器在http調用上不輸出任何內容,可以很好地與https調用

所有這些都已經運行良好,一年多了。 三天前,突然,購物車頁面停止工作。通過「停止工作」,我的意思是沒有輸出被提供給瀏覽器。

我不知道有任何的改變被在我的網站的代碼所做的,所以我甚至不知道如何開始調試......

我所做的發現是,當我使用https打電話購物車,它得到了服務。所以這個問題只存在於http調用中(儘管直到現在我使用http調用並且一切都很好)。

爲了讓事情變得複雜,如果我強制https對所有對購物車控制器的調用 - 購物車頁面運行良好,但sidecart根本沒有顯示。如果我在所有對購物車功能的調用中使用http,反過來也是這樣:sidecart運行良好,但整個頁面不顯示。 我應該說我使用一個鉤子來強制/取消強制ssl,這取決於uri段,所以我非常希望所有對mydomain.com/cart的調用都使用相同的協議。

不知道它是否相關,但是我的SSL證書在問題出現前的幾天更新。託管公司堅持沒有任何改變,但我不知道我是否可以完全信任他們。

此外,在同一時間的問題開始,下面的消息開始出現在我的error_log:

[13-Jul-2015 08:48:16 UTC] PHP Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 72 bytes) in /home/temphao1/public_html/system/core/Loader.php on line 807

線807在Loader.php是這樣的:extract($this->_ci_cached_vars);

任何指針,以如何開始調試這個奇怪的問題將不勝感激!

+1

如果一個正在運行的系統在沒有任何「發生」事件後開始停止服務,通常您的數據已經增長到某個腳本由於錯誤查詢而崩潰的狀態 - 並且允許的內存大小錯誤可能是一個指標(偶數如果它在你的錯誤日誌) – sintakonte

+0

沒有htaccess,配置,控制器和視圖文件的代碼,我懷疑有人可以猜測發生了什麼。 – Tpojka

+0

@sintakonte,感謝您的指針。有關如何開始調試這樣的任何提示?問題在於錯誤指向的是Codeigniter框架的一部分,而不是我編寫的代碼。 – einav

回答

0

幾乎太尷尬承認,但找到了答案。

它與https和http無關。

我有一個頁計數器發送所有頁數的數據到所有頁面,我在php腳本內進行計數,而不是使用MySQL COUNT,只發送結果到頁面...

因此,http購物車停止工作,因爲它是最受歡迎的網頁,並且櫃檯數據非常龐大。 https購物車沒有經常使用,所以櫃檯數據不夠大,而且仍然可以管理。

謝謝@sintakonte和@Shaiful伊斯蘭教指出我在正確的方向!正是我需要幫助我達成解決方案。

相關問題