valousal Posted August 1, 2017 Share Posted August 1, 2017 Bonjour, Au passage HTTPS d'un site PrestaShop, nous rencontrons une erreur sur un module exécuté via une tâche CRON. Après quelques recherches, nous avons remarqué que c'est la ligne "include ../../init.php" qui génère une erreur. include(dirname(__FILE__).'/../../config/config.inc.php');include(dirname(__FILE__).'/../../init.php'); Avez vous déjà rencontré ce type d'erreur ? Merci pour votre retour. Link to comment Share on other sites More sharing options...
Matt K. Posted August 1, 2017 Share Posted August 1, 2017 Salut, On peut voir le cron du script ? Parce que cette syntaxe marche correctement de mon côté. C'est peut-être le cron qui doit être modifié. Bon courage Link to comment Share on other sites More sharing options...
valousal Posted August 1, 2017 Author Share Posted August 1, 2017 Salut, On peut voir le cron du script ? Parce que cette syntaxe marche correctement de mon côté. C'est peut-être le cron qui doit être modifié. Bon courage Salut Matt, Merci pour ta réponse. Le cron marche correctement en HTTP. La commande est la suivante : 0 0 * * * /usr/bin/php /home/..../script.php > /home/..../script.log Voici le code du fichier script.php exécuté par le CRON. <?php include(dirname(__FILE__).'/../../config/config.inc.php'); include(dirname(__FILE__).'/../../init.php'); include(dirname(__FILE__).'/files.php'); ini_set('memory_limit', '1024M'); $be = new MaClass(); $be->CallFunction(); Merci Link to comment Share on other sites More sharing options...
Matt K. Posted August 1, 2017 Share Posted August 1, 2017 Ok merci, ça me semble pas anormal. J'aurai dû commencer par te demander : quelle est l'erreur que tu rencontres ? Link to comment Share on other sites More sharing options...
valousal Posted August 1, 2017 Author Share Posted August 1, 2017 Ok merci, ça me semble pas anormal. J'aurai dû commencer par te demander : quelle est l'erreur que tu rencontres ? Le script arrête de s’exécuter. Concernant l'erreur, nous sommes en phase de développement pour migrer le site sur HTTPS à nouveau. C'est à ce moment que je pourrais à nouveau reproduire l'erreur... Merci à toi. Link to comment Share on other sites More sharing options...
valousal Posted August 2, 2017 Author Share Posted August 2, 2017 Ok merci, ça me semble pas anormal. J'aurai dû commencer par te demander : quelle est l'erreur que tu rencontres ? Salut Matt, Je me permets de revenir vers toi concernant ce soucis. Voici les erreurs après l’exécution du cron lorsque PrestaShop : a seulement le SSL d'activé PHP Notice: Undefined index: REQUEST_METHOD in /...../classes/controller/FrontController.php on line 788 a seulement le SSL d'activé le SSL actif sur tout le site PHP Notice: Undefined index: REQUEST_METHOD in /...../classes/controller/FrontController.php on line 788 PHP Warning: Cannot modify header information - headers already sent by (output started at /...../modules/mon_module/script.php:4) in /...../classes/controller/FrontController.php on line 790 PHP Warning: Cannot modify header information - headers already sent by (output started at /...../modules/mon_module/script.php:4) in /...../classes/controller/FrontController.php on line 791 PHP Warning: Cannot modify header information - headers already sent by (output started at /...../modules/mon_module/script.php:4) in /...../classes/controller/FrontController.php on line 793 Lorsque les options de SSL sont désactivés sur PrestaShop, aucune erreur présente. Merci à toi. Link to comment Share on other sites More sharing options...
Matt K. Posted August 2, 2017 Share Posted August 2, 2017 (edited) Ok je vois. Quelque chose comme ça devrait fonctionner 30 * * * * wget -q -O /dev/null https://.../ton_module/scripts/script.php >/dev/null 2>&1 Le problème est que le FrontController à besoin d'être appelé en https pour fonctionner (sinon il cherche à te rediriger) Je te conseille aussi d'ajouter un jeton de sécurité en paramètre. Bonne journée. Edited August 2, 2017 by Matt K. (see edit history) 1 Link to comment Share on other sites More sharing options...
valousal Posted August 2, 2017 Author Share Posted August 2, 2017 Super ! Le passage en HTTPS oblige d'appeler les fichiers via cette méthode pour que le FrontController soit appeler en HTTPS ? Encore merci !! Bonne fin de journée. Link to comment Share on other sites More sharing options...
Matt K. Posted August 2, 2017 Share Posted August 2, 2017 Il y a peut-être une meilleure manière de faire. Si quelqu'un sait comment faire, je l'invite à poster ici. ^^ Par contre, si tu as pas besoin du FrontController dans ton script, tu retire la ligne et ton cron devrait fonctionner comme avant. Avec plaisir ! Link to comment Share on other sites More sharing options...
valousal Posted August 2, 2017 Author Share Posted August 2, 2017 (edited) J'effectue des requêtes sur les commandes ( new Order() ), les clients (new Customer () ). Le fichier init.php n'est donc pas nécessaire ? Le fichier init.php initialise seulement le FrontController ? Merci pour ta réponse. Edited August 2, 2017 by valousal (see edit history) Link to comment Share on other sites More sharing options...
Matt K. Posted August 3, 2017 Share Posted August 3, 2017 Je pense que tu n'en a pas besoin. Enlève la ligne et regarde ce qu'il se passe. :-p Link to comment Share on other sites More sharing options...
valousal Posted August 3, 2017 Author Share Posted August 3, 2017 En effet... pas besoin d'init.php. Merci beaucoup une nouvelle fois. J'ai appris des choses A bientôt peut-être ! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now