Mon forum affiche l’âge d’un message en se basant sur l’horloge du client, ce qui entraîne des erreurs. Par exemple, si un message a été publié à 17 h, et que je le consulte à 21 h 10, alors que l’horloge de mon appareil indique 17 h 10, le forum indique que le message a été publié il y a seulement dix minutes. Comment puis-je corriger cela ?
L’un des horloges doit être incorrect (ou avoir le mauvais fuseau horaire). Si l’horloge de votre client est correcte, alors l’horloge du serveur doit être fausse. Essayez de vous connecter au serveur via SSH et exécutez la commande date.
C’est tout l’intérêt. Si l’horloge du client est incorrecte, le forum affichera des horodatages erronés. Cela ne devrait pas être le cas.
Qu’en est-il d’un lecteur visitant le forum depuis un fuseau horaire différent ? Verra-t-il également toutes les heures incorrectes ?
C’est soluble…?
Je peux en effet reproduire ce problème en modifiant l’heure de mon système. Par exemple, pour le message de @david ci-dessus, si je règle mon heure à 11h05 (je suis en Australie), j’obtiens « il y a 7 min ». Si je change de fuseau horaire sans modifier l’heure, le comportement reste correct : il indique toujours « il y a 3 h », mais les heures affichées au survol changent en raison du fuseau horaire différent.
Je ne suis pas sûr de ce que vous souhaitez résoudre ici ? Le message « il y a X min » sera toujours basé sur le client, car il est relatif à l’heure et aux paramètres de fuseau horaire du système du client. Un horloge système incorrecte côté client est peu probable, car la plupart du temps l’heure et le fuseau horaire sont réglés automatiquement via Internet.