2 votes

Qu'est-ce que "php a quitté avec le code d'erreur 1" ?

Je fais tourner un script php à travers le serveur web pour exécuter psexec qui à son tour exécute un autre script php script.

Lorsque je l'exécute normalement à partir de la ligne de commande, tout fonctionne bien et il n'y a aucun problème.

Cependant, lorsque je l'exécute depuis le serveur web, j'obtiens ceci :

PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com

php exited with error code 1.

Donc, à partir de cela, je peux évidemment dire que psexec s'exécute correctement, mais pour une raison quelconque, le php script se termine. Comme je l'ai dit, cependant, si je l'exécute manuellement à partir de la ligne de commande, il fonctionne parfaitement.

J'ai essayé de faire un peu de recherche, mais je n'arrive pas à comprendre. Quelqu'un le sait-il ?

J'utilise Apache2 (XAMPP) sur Windows 2008.

0voto

iainlbc Points 2684

Les codes d'erreur renvoyés par PsExec sont spécifiques aux applications que vous exécutez, et non à PsExec. Si psexec se connecte avec succès et exécute le programme cible, il renvoie le niveau d'erreur de ce programme. 0 est généralement un succès, 1 est généralement incorrect/invalide/échec.

Qu'est-ce que vous essayez d'accomplir ? Peut-être pouvez-vous configurer une tâche planifiée pour exécuter le script ou une autre méthode pour le lancer. Peut-être que le compte de service qui exécute apache n'a pas les droits d'exécution sur le script ?

EDIT : essayez aussi d'ajouter l'option -accepteula à la commande psexec dans votre code PHP. Il se peut qu'il soit bloqué par l'acceptation du CLUF.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X