如何解決WordPress外掛管理時記憶體不足的問題?

自從WordPress2.7版後,外掛管理越來越方便,想要刪除、停用、升級外掛通通在後台可以搞定,不必要開啟FTP把外掛檔案上傳到指定資料夾。不過方便之餘可能有些問題也逐漸浮現。最近常常看到大家有出現「Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 7680 bytes)」這種問題,那這就是你外掛的記憶體使用量超過系統限制,那我們就來處理一下吧!

最近週遭朋友都遇到了外掛啟用停用時都出現了似乎是記憶體不足的問題,錯誤訊息大至上如下,看起來很像是使用者的執行時記憶體用量超過了主機預設給予的記憶體用量,造成程式執行失敗。

解決WordPress記憶體不足問題
(感謝小俊提供此圖片XD)

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 7680 bytes) in
/home/your/public_html/wp-includes/kses.php(401) : runtime-created function on line 1

所以為了解決這問題,上了官方網站爬了文章,在這篇有提到,只要把記憶體調大就可以解決這種問題了,不過依照網站空間的不同,解決方式有兩種,大致上如下。

自架網站(Appserv)

如果你是自己架設伺服器來營運網站卻出現WordPress程式執行時記憶體不足的情況,那你可以試著修改php.ini中的設定,把記憶體的部分(memory_limit)調大一點,這樣的問題就可以解決囉!

若是一般Windows的阿帕契,那就請點擊【開始】→【程式集】→【AppServ】→【Configuration Server】→【PHP Edit the php.ini Configuration File】開啟後,請找到以下文字,並把後方數字調大,例如調到64M,然重起阿帕契即可。

memory_limit

解決WordPress記憶體不足問題

虛擬主機(Web Hosting)

如果你是租用的虛擬主機,雖然網路上有些方法可以讓你透過.htaccess來修改虛擬主機的php.ini調整成符合你的需求之方法,但是並非每台主機都可以讓你調整,所以我們可直接利用WordPress內建的函數來處理。

啟動你的FTP並將你的WordPress設定檔wp-config.php下載回來,開啟後請將以下語法加入到wp-config.php檔案的任意位置,儲存後在把檔案上傳回主機覆蓋就可以了!

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

解決WordPress記憶體不足問題

基本上按照以上方法,記憶體不足這樣的問題就可以輕鬆解決。雖然更改記憶體的限制可以有效處理記憶體不足的問題,不過照裡來講按照系統預設的限制應該是不會有過少的問題,可能是外掛(plugins)沒寫好,或者是裝到山寨版的外掛等等,最根本的還是要去把問題抓出來才是最佳的解決之道。

在Google News上追蹤我們最新文章
香腸
香腸

喜歡在網路上透過文字與圖片分文章教學,默默地用鍵盤烤了9年的香腸。另外還身兼阿腸接案餬口飯吃。對了,別叫我阿腸,請叫我香腸,這樣我才知道你看我部落格長大的。

文章: 1781

25 則留言

  1. 網站上出現
    Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 491520 bytes) in /home/a6650697/public_html/wp-admin/menu.phpon line 252

    這是什麼意思?
    該如何解決?
    拜託請快點回答我

  2. 我剛裝好 開啟網頁就跑出 Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 393216 bytes) in /home/a6209264/public_html/wp-includes/pomo/mo.php on line 230

    空間是 000webhost 我改128M 才能用 我才剛裝兒已有需要這麼大歐

  3. 我是用虛擬主機,我已經在wp-config.php加入語法 define (‘WP_MEMORY_LIMIT’, ’64M’);但還是不行,請問該怎麼解決呢?

  4. 上傳檔案大小已超過 php.ini 中 upload_max_filesize 的設定值
    我備份的檔為xml檔超過php.ini 2M,請問我如何改成l0M以上??急急急!

    香腸回應:
    需要調整apache設定,把上傳檔案變大。
    或者是,你按照他的結構,自己拆解分批匯入。

  5. 可請教嗎?…因我自動更新wordpress 3.12最新版本.出現
    Fatal error: Allowed memory size of 262144 bytes exhausted (tried to allocate 376984 bytes)
    xxxxxxxxx public_html/main/wp-admin/index.php on line 12
    但我做了以上動作後..還是出現一樣的錯誤訊息…問題是出在哪呢?
    (我是虛擬主機)

    香腸回應:
    如果依照本文調整了記憶體還是無用,那就是主機有限制記憶體使用量,建議您更新手動更新,或是減少網站上外掛使用量,以降低記憶體的耗用。

  6. 從你文章開頭”自從WordPress2.7版後…”來看,直覺先想到會不會是2.7版後越來越肥的問題(記憶體佔用越來越大^^”)

    香腸回應:
    那個到是還好~
    一隻程式一開始會被嫌太陽春,到後來會被嫌太肥胖,開發團隊要怎樣拿捏可是一套學問呢~

  7. 我遇過>< 而且還是莫名其妙出現的 (因為前一天還是好的,而在此期間沒有更動任何東西) 最後是整個站全部砍掉,重裝wp再匯入備分檔後才正常 至於為何會如此,我想只能問天吧?!= =

    香腸回應:
    外掛有問題吧…..我猜@@

  8. 我有兩個問題啊~
    1.阿帕契是甚麼來啊?不明白~
    2.我是Vista的用者,那要怎樣才能去到php.ini?
    (因為你寫的那個方法找不到啊orz)

    香腸回應:
    1.阿帕契=Apache
    2.我也是Vista使用者,我是如上述方式進入。基本上我會建議你把Vista的開始功能表調成傳統模式比較好找東西。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料