Difference between revisions of "Changing Timezone"

From WHMCS Documentation

 
(17 intermediate revisions by 5 users not shown)
Line 1: Line 1:
If you need your WHMCS system to operate in a different timezone to that which your server is configured with, you can do this by simply adding the line below to your WHMCS '''configuration.php''' file:
+
===Setting the timezone WHMCS uses===
  
date_default_timezone_set('Europe/London');
+
The time under which your WHMCS installation will run is based on the server clock and the timezone setting in your PHP configuration. If the time displayed in WHMCS is incorrect, there are two options for correcting it:
  
This changes the timezone for the WHMCS installation to the locality you specify so you just need to replace the 'Europe/London' part with the location you are based in.
+
*Change the server clock directly
 +
*Edit the PHP configuration on the server, specifying a different timezone.
  
For a full list of the available timezone localities you can use, please refer to http://www.php.net/manual/en/timezones.php
+
Changing the server clock may not be desirable if you host clients on the server. It also requires <tt>root</tt> access, so the second option is best for the majority  of users. Some hosting providers allow you to change the PHP configuration on an individual directory by creating a <tt>php.ini</tt> file within the WHMCS directory. In that situation, you could add the following line:
  
Note: This should be entered above the last line, ?>, in your configuration.php file
+
<div class="source-cli">
 +
date.timezone=Europe/London
 +
</div>
 +
 
 +
For a full list of the available timezone localities you can use, see [http://www.php.net/manual/en/timezones.php the PHP list of timezones].
 +
 
 +
Contact your hosting provider or server administrator if you are unsure of how to customise the PHP configuration of your server.
 +
 
 +
===Timezone the cron operates under===
 +
 
 +
In most cases, the PHP configuration for your WHMCS installation is different than the one that you use on the command line. It's important to ensure the timezone WHMCS's PHP configuration uses is the same as the one in the PHP configuration the command line uses, and, by extension, the PHP configuration that the cron job is using.
 +
 
 +
If this is different, you will find that your cron job is executing at an unexpected or different time from the setting at '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Automation_Settings|Automation Settings]]''' or, prior to WHMCS 8.0, '''Setup > Automation Settings'''.
 +
 
 +
To check this, run the following command at the server command line while logged in as the same user under whom the cron job is running:
 +
 
 +
<div class="source-cli">
 +
php -ini | grep "date.timezone"
 +
</div>
 +
 
 +
You can compare the output of this command to the <tt>date.timezone</tt> set in the PHP configuration your WHMCS installation is using by navigating to '''Utilities > System > [[PHP Info]]'''. If they are different, you will need to work with your hosting provider or server administrator to set the same <tt>date.timezone</tt> in the PHP configuration your WHMCS installation is using and the one for the command line on the server.

Latest revision as of 18:51, 19 April 2022

Setting the timezone WHMCS uses

The time under which your WHMCS installation will run is based on the server clock and the timezone setting in your PHP configuration. If the time displayed in WHMCS is incorrect, there are two options for correcting it:

  • Change the server clock directly
  • Edit the PHP configuration on the server, specifying a different timezone.

Changing the server clock may not be desirable if you host clients on the server. It also requires root access, so the second option is best for the majority of users. Some hosting providers allow you to change the PHP configuration on an individual directory by creating a php.ini file within the WHMCS directory. In that situation, you could add the following line:

date.timezone=Europe/London

For a full list of the available timezone localities you can use, see the PHP list of timezones.

Contact your hosting provider or server administrator if you are unsure of how to customise the PHP configuration of your server.

Timezone the cron operates under

In most cases, the PHP configuration for your WHMCS installation is different than the one that you use on the command line. It's important to ensure the timezone WHMCS's PHP configuration uses is the same as the one in the PHP configuration the command line uses, and, by extension, the PHP configuration that the cron job is using.

If this is different, you will find that your cron job is executing at an unexpected or different time from the setting at Configuration () > System Settings > Automation Settings or, prior to WHMCS 8.0, Setup > Automation Settings.

To check this, run the following command at the server command line while logged in as the same user under whom the cron job is running:

php -ini | grep "date.timezone"

You can compare the output of this command to the date.timezone set in the PHP configuration your WHMCS installation is using by navigating to Utilities > System > PHP Info. If they are different, you will need to work with your hosting provider or server administrator to set the same date.timezone in the PHP configuration your WHMCS installation is using and the one for the command line on the server.