PHP is a scripting language used primarily on the web. PHP is highly customizable and has many settings that our users can modify themselves. This article will advise you how to change PHP settings in your php.ini file/

How to view your current PHP settings

To view your current PHP settings, create a PHPinfo page. If you're not sure how to do this, please see How can I view my PHP settings using a PHPinfo page ?

The steps in updating the values listed in your PHP info page depend on how PHP is setup on your particular server. In general, PHP runs on our servers as either:

  • Apache module
  • CGI Module

To find out how PHP is configured on your server, create a PHP info page (via the above instructions) and look at the "Server API"' value. If the "Server API" is "CGI", then PHP is running as "CGI module". If "Apache" is listed, then your server is running PHP as an "Apache module".

Server API: Apache

If your server runs PHP as an "Apache module", you can change your PHP settings via a .htaccess file. A .htaccess file is a configuration file you can create and use to change many server settings, including PHP settings. The basic syntax to use in your .htaccess file for updating PHP settings is:

php_value Directive value

For example, if you wanted to change the max_input_time from 60 seconds to 120 seconds, add the following to your .htaccess file:

php_value max_input_time 120

After making this change, refresh your PHP info page, and you should see the changes. If you receive a 500 error, please double check the syntax you used as you may have made a misspelling.

If you don't have a .htaccess file, you can simply create a new file named .htaccess. As the .htaccess file begins with a dot (.), it is considered a hidden file. If you are using the cPanel's File Manager, please be sure to select the option to Show Hidden Files (dotfiles), otherwise you will not be able to see your .htaccess file. If you do not see this prompt when opening your File Manager, click the, "reset all interface settings" link at the bottom of your cPanel to reset your File Manager settings.

Server API: CGI

the-php-temporary-directory-is-not-set
View of the php.ini in the File Manager

If your server runs PHP as a CGI module, you can change your local php.ini file in order to make modifications to your PHP setup. php.ini is a PHP configuration file with a list of PHP directives and their values. In the above example, we modified the max_input_time value. If you open your php.ini file and search for max_input_time, you should see something similar to:

;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
max_execution_time = 30
max_input_time = 60
memory_limit = 256M
upload_max_filesize = 10M

To change the max_input_time from 30 seconds to 120, for example, simply change 30 to 120 and save the file. Refresh your PHP info page, and you should see the changes.

Increasing PHP memory in the php.ini

A common issue when using free open source software or other PHP intensive programs is the "exhausted memory" error. If you have a PHP memory error on your site, you can increase the memory limit PHP uses for the scripts. To learn how to change the memory limit in your php.ini, please see the following link.

Fixing the Allowed memory size exhausted error

Modifying the PHP.INI file

Here is a quick step-by-step tutorial on editing the PHP.INI file.

  1. Login to the cPanel.
  2. File Manager in the cPanelFind the File Manager in File section of the Cpanel. Review our tutorial on using the Code Editor within the File manager if you're looking on information how to use it.
  3. File Manager iconsNavigate to the directory where you will either save or edit the PHP.INI file and then select the file and use the Code Editor. To open the file, you can click on it to select the file and then click on the Code Editor icon in the menu bar of the File Manager. You can also right-click with your mouse and select Code Editor from the menu that appears.
  4. Edit the section of the PHP.INI that you wish to change.
  5. Click on SAVE CHANGES in the top right hand corner in order to save your modifications or additions to the file.

Common Problems when Updating your php.ini file

I don't have a php.ini file!

Only users running on a server with PHP loaded as a "CGI module" will have a php.ini file. The php.ini file by default will be located at public_html/php.ini. If you do not see a file named php.ini in your public_html, please contact our Support Department and request that we create one for you.

I made changes to the php.ini file, however I do not see the changes!

The php.ini file is not recursive. Updating your php.ini values in public_html/php.ini will not affect PHP files in subfolders of your public_html, such as public_html/staff. To correct this problem, you can make your php.ini file recursive so that it affects all sub folders. More help on this can be found in How can I make my php.ini file recursive?

Considering a VPS or Dedicated Server?

With a VPS or dedicated server, a site owner can truly customize the server to their exact specification. If you are on a Shared Hosting account, and are thinking about upgrading from to a VPS or dedicated server, click here to read more about a VPS vs dedicated server.

Did you find this article helpful?

We value your feedback!

Why was this article not helpful? (Check all that apply)
The article is too difficult or too technical to follow.
There is a step or detail missing from the instructions.
The information is incorrect or out-of-date.
It does not resolve the question/problem I have.
How did you find this article?
Please tell us how we can improve this article:
Email Address
Name

new! - Enter your name and email address above and we will post your feedback in the comments on this page!

Related Questions

Here are a few questions related to this article that our customers have asked:
In OpenCart, page goes blank when importing
Would you like to ask a question about this page? If so, click the button below!
Ask a Question
2013-05-15 10:40 am
I just wanted to thank you for this. I have spent 2 hours combing through blog-spam and other crap on the internet until i found this. This was hands down one of the best tutorials on anything i have seen in a long time. It worked perfectly the first time with no issues.
n/a Points
2014-04-22 1:53 am

Thanks for this article. It quite clear.

But, how do you change the max input vars when using a CGI server?

There is no max_input_vars in the local php.ini.

 

Thanks in advance.

 

Staff
9,576 Points
2014-04-22 7:49 am
While it may not already be located in your local file, you may always add the line which will change what is defined there. The php.ini variables are still the same regardless of how you are running PHP.
n/a Points
2014-09-03 11:08 am

And how that line should be to change vars?

Staff
10,406 Points
2014-09-03 1:07 pm
Hello Enzo,

Thank you for your question. To change the variable, just adjust modify the number following the rule you want to change. For example:
memory_limit = 256M

To increase the memory_limit in this case, just change the number to what you need:
memory_limit = 512M

Thank you,
John-Paul
n/a Points
2014-10-20 6:40 am

Hi,

how to increase  max_input_vars  values....  In htaccess it is throwing error.     

It is not working for me.!

Staff
10,406 Points
2014-10-20 8:51 am
Hello ajay,

Thank you for your question. Typically, you would increase the max_input_vars value in the php.ini file.

Can you provide a link to the error?

If you have any further questions, feel free to post them below.

Thank you,
John-Paul
n/a Points
2014-10-29 10:33 am

How can I use local php setting while using php in CLI. For example, if I am using composer and the command is "php composer update", how can I use local settings for this? I am getting out of memory while running "php composer update".

n/a Points
2014-10-29 11:04 am

Later I checked it and found that CLI uses local settings. Unfortunately, I could not solve my out of memory issue while using composer.

Staff
17,905 Points
2014-10-29 11:12 am
Hello Debiprasad,

Thanks for the question. I am unable to find out if you are an InMotion customer, so that I could see the server type you're using. When I researched this issue, I was told that there need to be some type of configuration added to your CLI command to help with the memory management. Otherwise, memory would be managed by the server php.ini settings. In order to change the server settings you would need to have access to the server as a root user. This would not be possible on a shared server account with InMotion.

I hope this helps to provide some clarity on the issue. Please let us know if you continue to have any further questions or comments.

Regards,
Arnel C.
n/a Points
2014-10-30 2:28 am

My client is an InMotion customer. And it's a shared hosting. Is there any chance to run the CLI command without the out of memory error (in other words to increase allowed memory).

Staff
10,406 Points
2014-10-30 9:54 am
Hello Debiprasad,

Thank you for your question. You can specify the php.ini file in command in for example:

php -c /home/userna5/public_html/php.ini /home/userna5/public_html/somefile.php


You also, can specify php.ini settings in the command, such as:

php -c /home/userna5/public_html/php.ini /home/userna5/public_html/somefile.php -d memory_limit=256M


If you have any further questions, feel free to post them below.

Thank you,
John-Paul
n/a Points
2014-10-31 2:04 am

Thank you for letting me know about those two tricks. But unfortunately, I am unable to run "php composer update" properly. Even if I set the memory to 2048M, it's not working and showing out of memory error.

Staff
10,406 Points
2014-10-31 10:37 am
Hello Debiprasad,

Thank you for the additional information. I found the official Composer guide on troubleshooting Memory errors in Composer.

It provides several solutions, and you can even submit a ticket to them directly to investigate further.

If you have any further questions, feel free to post them below.

Thank you,
John-Paul
n/a Points
2014-10-31 10:40 am

Thank you.

Post a Comment

Name:
Email Address:
Phone Number:
Comment:
Submit

Please note: Your name and comment will be displayed, but we will not show your email address.

15 Questions & Comments

Post a comment

Back to first comment | top

Need more Help?

Search

Ask the Community!

Get help with your questions from our community of like-minded hosting users and InMotion Hosting Staff.

Current Customers

Chat: Click to Chat Now E-mail: support@InMotionHosting.com
Call: 888-321-HOST (4678) Ticket: Submit a Support Ticket

Not a Customer?

Get web hosting from a company that is here to help. Sign up today!