Tom
Tom

Reputation: 12998

Overriding php.ini on server

I have a page which allows users to upload images.

It is returning a 500 error when the user tries to upload larger images though.

The following code...

<?php echo ini_get("upload_max_filesize"); 
echo ini_get("post_max_size"); 
echo ini_get("max_input_time");
echo ini_get("max_execution_time");
?>

...returns:

100M
100M
60
3600

I'm guessing from this that it's the max-input-time that's causing the problem as i've tested with files under 100mb but taking longer than 60 seconds to upload.

I don't have access with my host to the php.ini file, so can I override these settings? I've tried adding an htaccess file but I'm not sure I've put it in the correct place.

Upvotes: 15

Views: 46054

Answers (2)

Aleksandar Vucetic
Aleksandar Vucetic

Reputation: 14953

Put a .htaccess file in the root folder of your website (where your php script is) and add the following values:

php_value upload_max_filesize 100M
php_value post_max_size 100M
php_value max_execution_time 200
php_value max_input_time 200

Of course, you can put other size and time limits. That should work.

Upvotes: 25

TerryE
TerryE

Reputation: 10898

Setting up php ini directives depends on the nature of your service provider's configuration. Run a phpinfo() script to look at your configuration. If your provider is starting PHP using suPHP in a user UID context then it may look for a php.ini in the script's directory. This is how it works for my hosting provider.

Upvotes: 1

Related Questions