Fixing the Allowed memory size exhausted error
A common error with Open Source Software like WordPress, Moodle, and Joomla is the php "Allowed memory size error." Increasing the memory limit is an easy solution. This memory_limit can be changed in the php.ini in the public_html folder in your hosting account. This error can creep up in your website during the normal development process. The following is an example of the error:
Fatal error: Allowed memory size of 268435465 bytes exhausted
(tried to allocate 280559520) in Unknown on line 0
This is due to php variable data being stored in the memory that is not cleared while the php scripts are running.
For those who code their own sites: Coders use the unset() function to clear variable data that is no longer needed; however, with open source software, you will not want to alter any code.
How to fix the "Allowed memory size Error"
The php memory resource can be increased in the php.ini located in the public_html. The following steps will explain how to set the php.ini to allow a larger amount of memory use.
- Login to your cPanel
- Go to the File Manager.
Select the Web root (public_html/www) directory and click Go.
- Find the php.ini file in the public_html.
Note! If you do not have a php.ini in your public_html files, you can have our tech support staff restore the php.ini to your public_html directory.
Open the php.ini with the code editor.
- Find the following section in the php.ini file.
max_execution_time = 30
max_input_time = 60
memory_limit = 128M
Try increase the memory_limit value to 256M.If the php memory_limit is already at 256M, you can increase it to 512M.
Save the changes.
- In order for your memory limit to take effect you will need to make the php.ini recursive.
Important! Making the php.ini recursive is an important step. If you do not know how to do this, please see our article on Make the php.ini recursive in the .htaccess.
Now visit the site. You should not see the "Allowed memory size" error anymore. If the error still shows on your website, there may be a setting within the software itself that is overriding the change or the php.ini in the public-html may be overriden by another setting elsewhere. If this is the case, you can contact our our tech support staff to have them look into the error further.
Support Center Login
Social Media Login
2013-11-25 12:34 am
Hi. I have problem about memory limit. "Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 578 bytes) in /home/............... /admin/model/tool/export.php on line 352" appeared at my website when i import file import/export. I already changed memory_limit from 240M to 512M but still cannot add more option product.
2013-11-25 9:46 am
As this is deep within your file structue, be sure that your php.ini is set to be recursive. You may see more information on this at the following:
Make the php.ini recursive in the .htaccess
2014-11-12 1:53 am
Thanks for your description of the solution to this problem. I've read a lot of explanations of how to fix this and this was the best and it worked, in part because of your admonition to make the php.ini recursive. As it happens this also solved the "white screen of death" WP editing screen problem I was having. It turns out that was, at least for me, a memory problem, contrary to what a lot of people were saying elsewhere. So a big thank you!
2014-12-22 12:53 pm
I agree, very helpful article, thanks so much for sharing
2015-06-05 2:04 am
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 877375 bytes) in /www/htdocs/w0132262/wp-content/themes/thesis/lib/core/api/colors.php on line 206
2015-06-05 9:55 am
Did you follow the instructions above for how to fix the error? If so, what did you set the memory to? Have you tried increasing it to a higher limit?
2015-08-11 11:33 pm
Hi,In the file wamp\alias\phpmyadmin.conf just before </Directory> insert four lines below to obtain:
php_admin_value upload_max_filesize 512M php_admin_value post_max_size 512M php_admin_value max_execution_time 720 php_admin_value max_input_time 720 </Directory>
With this, I managed to import large SQL files. The largest file I actually imported was 278 MB
2015-08-12 9:28 am
If you're running WAMP, then it's not running on our servers. We can try to give you some information, but you will need to look into memory consumption, current load on your server, etc in order to determine what's causing the program to fail due to memory exhaustion. You may require more memory on the computer that you're using a server.
I know you said that the largest file you imported was 278 MB, but the problem is the amount of memory your server is using at the time that you get the memory exhaustion error. You may need to also increase the MEMORY_LIMIT value which you don't show in your comment above.
I hope this helps to answer your question, please let us know if you require any further assistance.