Tweaking php For Maximum Execution Time For Scripts

Posted on in Categories , , , , , last updated November 10, 2010

I‘ve been trying to migrate my webblogs using WordPress inbuilt import facility. I’ve exported current blog as a xml file and downloaded to my desktop. Next I navigated to my new blog’s admin area and clicked on Manage > Import. However import failed after importing 50-60% posts only.

I went through Apache and PHP log files and I realized that the script was timed out. How do I fix this problem under Linux / UNIX?

PHP by default places resource limits on all php scripts using the following three directives:

=> max_execution_time : Maximum execution time of each script, in seconds (default 30 seconds)

=> max_input_time : Maximum amount of time each script may spend parsing request data (60 seconds)

=> memory_limit : Maximum amount of memory a script may consume (default 8MB)

Your php script was timed out because of resource limits. All you need to do is setup a new resource limits so that the script will get executed:

Open /etc/php.ini (or /etc/php5/php.ini) file:
# vi /etc/php.ini
Locate and setup new resource limits as follows:

# 600 seconds
max_execution_time = 600

# 120 seconds
max_input_time = 120

# 64 MB
memory_limit = 64M  

Restart Apache or lighttpd web server:
# /etc/init.d/httpd restart
OR
# /etc/init.d/lighttpd restart

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin and a trainer for the Linux operating system/Unix shell scripting. He has worked with global clients and in various industries, including IT, education, defense and space research, and the nonprofit sector. Follow him on Twitter, Facebook, Google+.

3 comment

  1. php.ini was in /etc/php5/apache2 for me and the apache2 restart is done by:

    /etc/init.d/apache restart

    which might help others with Ubuntu. Thanks for the tip.

Comments are closed.