J'utilise l'hébergement partagé chez Bluehost et j'ai changé le date.timezone
par défaut en UTC dans mon php.ini
. Tout fonctionne correctement avec mon script PHP et date()
renvoient l'heure UTC comme prévu.
Le problème se produit avec la crontab, car lorsque je saisis un travail cron à exécuter chaque lundi à 00h15 UTC, avec la ligne suivante:
15 0 * * 1 php /home2/mywebsite/public_html/php/myscript.php
Ensuite, le script n'est pas exécuté à 00h15 heure UTC mais à 00h15 UTC-6, qui correspond à l'Amérique occidentale, je suppose. Pour cette raison, je dois le régler à 06:15 PM de la veille, c'est-à-dire dimanche, pour qu'il soit exécuté le lundi à 00h15 UTC:
15 18 * * 0 php /home2/mywebsite/public_html/php/myscript.php
J'ai demandé leur soutien, mais ils ont dit qu'ils ne pouvaient pas aider avec la crontab. Pour eux, ça marche.
Est-il lié à l'hébergement partagé et existe-t-il une possibilité de le modifier pour que le service crontab utilise mon paramètre de fuseau horaire php.ini
?
J'ai constaté qu'après avoir modifié mon paramètre de fuseau horaire php.ini en UTC, le service d'hébergement partagé de Bluehost utilisait toujours le fuseau horaire MDT (heure avancée des Rocheuses), avec un décalage de -6 heures. Ceci est probablement dû à l'hébergement partagé, comme indiqué par @dan dans les commentaires, et il n'y a rien qui puisse changer cela si ce n'est de passer à un hébergement dédié.