BLOG HOME -  UK WEB HOSTING -  PHP MYSQL HOSTING -  RESELLER HOSTING -  eUKhost FORUMS -  VPS HOSTING

Using a Custom PHP.ini File With Your Linux Shared Hosting

As long as your host allows you to, you can use a custom php.ini file within your Linux shared hosting environment. By utilizing .htaccess you are able to create a custom fileset which you can then use to disable and enable PHP functions as per your wish within your website; this can be done site-wide or directory-wide. This can be helpful to you if your host has disabled certain modules within the server wide php.ini file, or if there are modules which are enables but you’d rather have disabled, for example if they don’t work with a PHP application which you have installed on your website. As long as you are able to within your shared hosting environment, the deployment of a custom php.ini file is relatively easy if the following steps are followed.

Deploying a Custom PHP.ini File

First off, you need to create a .htaccess file; you might already have one within your hosting environment, if so you can easily edit. In either case, you will need to add the following line to the .htaccess to enable Apache to find the custom php.ini file:

SetEnv PHPRC /path/to/custom/php.ini

You will then need to create the custom php.ini file itself within your site - the file can actually be named anything and can have any posess any extension, if you want it to. Within this file you are able to specify whether PHP modules are enabled or disabled for your website - Apache will pick the custom php.ini file up via the use of your .htaccess file and will then apply your custom settings to your virtual environment on run time. For our example we will be disabling PHP’s use of magic quotes. To disable PHP’s use of magic quotes on run time, we will need to paste the following three lines into our custom PHP.ini file:

magic_quotes_gpc = Off
magic_quotes_runtime = Off
magic_quotes_sybase = Off

Once that has been done, as long as the .htaccess file is pointed towards the correct custom php.ini file, Apache should pick the changes up on the next run and the specified modules or settings will take effect every time your site is run as long as the appropriate files are in their correct locations. By doing this, you are able to ensure that all custom settings for your website are served on the next run, meaning that they will always be applied to it. Another example of a module being changed would be the setting of the time zone for your website through the use of a custom php.ini file, to do this we need to paste the following code into the file:

date.timezone = “America/Indianapolis”

The example shown sets the date timezone to Indiana, America; if we want to set our time zone of GMT London, we need to paste in the following code:

date.timezone = “Europe/London”

Changing the time zone can be an important change, since your website might be hosted in somewhere like America, but your audience however might be Australia - that is a vast time difference. Some applications are time/date sensitive, which means that you should ensure that you change the time zone to fit in with your audience, as it could cause confusion with both the system and your visitors if a different time from what they’re use to is displayed, or if completely the wrong day is set.

Conclusion

With the use of .htaccess you are able to use a custom php.ini at either site or directory levels within yoru website, allowing you to run your website with the appropriate settings as per your wish. This is good since it allows you to achieve things which in some cases are only achievable within a dedicated environment such as a VPS server or a dedicated server. Also, some applications only work if certain PHP settings are enabled or disabled, so this allows you to customize your environment to ensure you are able to run any type of PHP application. This sort of tweaking is something that certainly allows you to make the best out of your shared or reseller website hosting.

digg this


This post is compiled by eUKhost.com

Leave a Comment

You must be logged in to post a comment.