Difference between revisions of "Changing Timezone"

From WHMCS Documentation

Line 2: Line 2:
 
The time under which your WHMCS installation will run is based on the server clock and the timezone setting in your PHP configuration. To change the time in WHMCS there are two options:
 
The time under which your WHMCS installation will run is based on the server clock and the timezone setting in your PHP configuration. To change the time in WHMCS there are two options:
  
#Change the server clock directly
+
*Change the server clock directly
#Edit the PHP configuration specifying a different timezone.
+
*Edit the PHP configuration, 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 option 2 is the most viable for the majority  of users. A number of 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:
+
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:
  
<source lang="php">
+
<div class="source-cli">
 
date.timezone=Europe/London
 
date.timezone=Europe/London
</source>
+
</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].
 
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].
Line 16: Line 16:
  
 
===Timezone the cron operates under===
 
===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 is therefore important to ensure the timezone in the PHP configuration WHMCS uses is the same as the one in the PHP configuration the command line uses, and by extension the PHP configuration the cron job is using.
+
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 'Setup -> Automation Settings'. To check this, run the following command at the server command line while logged in as the same user under which the cron job is running:
+
If this is different, you will find that your cron job is executing at an unexpected or different time from the setting at '''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:
  
<source lang="php">
+
<div class="source-cli">
 
php -ini | grep "date.timezone"
 
php -ini | grep "date.timezone"
</source>
+
</div>
  
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.
+
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.

Revision as of 20:27, 9 June 2020

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. To change the time in WHMCS there are two options:

  • Change the server clock directly
  • Edit the PHP configuration, 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 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.