Book Sale! Save 20% on WordPress books with discount code: SAVE20
Web Dev + WordPress + Security

WordPress Error Fix(?): Increase PHP Memory for cache.php

This trick isn’t guaranteed to prevent all WordPress-generated PHP memory errors, but it certainly seems to help reduce their overall occurrence. For some reason, after my host upgraded their servers to Apache 1.3.41, I began logging an extremely high number of fatal PHPmemory exhausted” errors resulting from the WordPress cache.php script. Here is an example of the countless errors that are generated:

[17-Feb-2008 19:26:38] PHP Fatal error:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 6233929 bytes) in /home/.../press/wp-includes/cache.php on line 330
[17-Feb-2008 19:30:57] PHP Fatal error:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 6327989 bytes) in /home/.../press/wp-includes/cache.php on line 330
[17-Feb-2008 19:33:35] PHP Fatal error:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 6253909 bytes) in /home/.../press/wp-includes/cache.php on line 330
.
.
.
[ + lots more ]
.
.
.
[17-Feb-2008 19:36:19] PHP Fatal error:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 6253069 bytes) in /home/.../press/wp-includes/cache.php on line 330
[17-Feb-2008 19:37:10] PHP Fatal error:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 6379449 bytes) in /home/.../press/wp-includes/cache.php on line 330
[17-Feb-2008 19:37:56] PHP Fatal error:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 6263789 bytes) in /home/.../press/wp-includes/cache.php on line 330

After researching online and learning that I am not alone with this issue, I deployed a threefold defense strategy to eliminate future memory conflicts related to the now-infamous cache.php pandemic. First, open the file wp-includes/cache.php and place the following code immediately after the opening <?php tag:

ini_set('memory_limit','32M'); // set memory to prevent fatal errors

After that, create an htaccess file for the wp-includes directory and insert the following directive:

# set memory limit for cache.php
php_value memory_limit 32M

Finally, create a local php.ini file in the same directory (wp-includes) and insert this:

;; set memory limit for cache.php
memory_limit = 32M

And that’s it. Save, upload, test and check for additional errors. If necessary, you may wish to try alternate values for the memory limit. I am not positive, but I think that valid values include 8, 12, 16, 32, 64, 128, ...etc., but the upper limit will vary depending on your server settings. Like I said, it doesn’t always work, but it definitely seems to help reduce the overall volume of memory-related errors in certain environments.

Download

To help speed up the process, I have zipped a complete set of the three required files in their respective formats. Simply unzip, upload and done:

PHP Memory Control Pack Version 1.0 (597B zip)

Note: If you happen to have absolutely any idea(s) as to why this problem continues to occur, there is a growing number of WordPress users (myself included) that are desperate for the answer. As mentioned in the article, increasing/limiting PHP memory (via any method) does not always work. Unfortunately, many users continue to log hundreds of these errors every day. Any clues and/or alternate fixes are more than welcome!</note>

Jeff Starr
About the Author
Jeff Starr = Creative thinker. Passionate about free and open Web.
The Tao of WordPress: Master the art of WordPress.

9 responses to “WordPress Error Fix(?): Increase PHP Memory for cache.php”

  1. Thanks Jeff.
    Tagged !

  2. Jeff Starr
    Perishable 2008/02/18 9:20 am

    My pleasure! :)
    I hope someone finds a more permanent solution for it!

  3. puredoxyk 2008/03/19 5:46 am

    WOW, lovely — fast and easy and worked like a charm. Thanks much!!

  4. Jeff Starr

    You’re welcome — glad to be of service! :)

  5. This solved my problem!
    Appreciate your help!

    Thanks a lot!

  6. Jeff Starr
    Perishable 2008/04/06 8:49 am

    Excellent — great to hear to got it working! Thanks for the feedback!

  7. Worked Great! Thanks for the info!

  8. Jeff Starr
    Perishable 2008/04/20 8:17 am

    My pleasure — thanks for the feedback! :)

  9. Thank you so much!

Comments are closed for this post. Something to add? Let me know.
Welcome
Perishable Press is operated by Jeff Starr, a professional web developer and book author with two decades of experience. Here you will find posts about web development, WordPress, security, and more »
WP Themes In Depth: Deep dive into WP theme development.
Thoughts
Currently having a blast redesigning Plugin Planet, so much work so little time.
Thanks to David McCan over at WebTNG for the awesome BBQ Pro review.
Enjoyed a nice mini-vacation with my fam. Great way to recharge and regroup.
Nice little interview with yours truly over at ThemeIsle. WordPress, web dev & more!
Perishable Press celebrating 16 years online! An incredible, rewarding journey.
Thanks to Nicholas Ferrell for his excellent and thorough review of Wutsearch search-engine launchpad.
Great article about using RSS as a Facebook alternative. I use RSS/feeds for news every day. Facebook, not so much.
Newsletter
Get news, updates, deals & tips via email.
Email kept private. Easy unsubscribe anytime.