2011-04-13 94 views
0

我有一個Wordpress網站的客戶端。他們正在運行一些導致致命內存錯誤的插件。這兩個插件具體是Simple Map & Drain Hole。我不確定這些插件究竟是哪一個引起了問題。簡單地圖用於管理地點或提供商,非常類似於Google地方信息。 Drain Hole用於通過URL隱藏來保護文件。PHP內存限制調試

在簡單地圖內,他們目前有大約900個地點。在Drain Hole內,他們目前有大約700個文件被保護。在開發過程中,我們沒有任何問題,因爲我們的PHP內存限制設置爲64MB。在他們的實時服務器上,主機只允許30MB,並且不允許更改。

我的問題/問題是這樣的:如果我將它們移動到一個新的主機,一個允許ATLEAST 64MB,我怎麼可以肯定的是,如果他們繼續增加這些插件,這將不會再次發生?無論如何要測試這些內存高峯是否合法,或者它們是否是糟糕的低效代碼的結果?

編輯:致命錯誤似乎被擊中或錯過。它只發生在Wordpress管理面板的某些屏幕上,特別是那些處理簡單地圖的屏幕。雖然如果我禁用Drain Hole插件,錯誤完全消失。錯誤:

**Fatal error:** Out of memory (allocated 34078720) (tried to allocate 44 bytes) in /fake/dir/wp-includes/wp-db.php on line 1400 
+0

在哪些行發生致命錯誤? – 2011-04-13 14:27:56

+0

@Pekka - 查看我的編輯 – Chris 2011-04-13 14:31:59

+0

您的主機是否只阻止您編輯您的php.ini?如果是這樣,你可以在腳本中使用ini_set('memory_limit',64);來設置內存。 – 2011-04-13 14:37:22

回答

2

1and1是一個糟糕的WP主機而臭名昭着。運行時WP 3.1嘗試分配64megs它本身,而在WP-config.php文件,你可以在頂部附近

define('WP_MEMORY_LIMIT', '128M'); 

加入這行攫取更多的,如果一臺主機允許它。如果可能的話找一個新的主機。您正在以密集的方式運行插件,這將需要大量的RAM。這可能是插件和WP的錯誤,但事實就是如此。

+0

是的,我正在轉移到一個新的主機,因爲1and1不允許我們擁有30MB以上的專有技術。 – Chris 2011-04-14 19:47:51

0

我知道這發生在buggy插件。不幸的是,它需要將它們逐個關閉,以查看哪個插件是責任。但是在插件停用之後,你會沒事的。

這是我的解決方案,當我收到同樣的錯誤。

+0

我同意這是在某些情況下的解決方案。然而,在這種情況下,插件實際上是需要的,技術上運行良好。我有一種感覺,在這種情況下,這些插件控制的數據量多於預期,這是某些頁面內存峯值的原因。 – Chris 2011-04-13 20:39:32