Назад | Перейти на главную страницу

Что такое «php завершен с кодом ошибки 1»?

Я запускаю php-скрипт через веб-сервер для выполнения psexec который, в свою очередь, выполняет другой скрипт php.

Когда я обычно запускаю это из командной строки, все работает нормально и нет никаких проблем.

Однако, когда я запускаю его с веб-сервера, я получаю следующее:

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

php exited with error code 1.

Итак, из этого я, очевидно, могу сказать, что psexec работает правильно, но по какой-то причине скрипт php завершается. Как я уже сказал, если я запускаю его вручную из командной строки, он работает отлично.

Я попытался немного осмотреться, но не могу понять. Кто-нибудь знает?

Я запускаю Apache2 (XAMPP) в Windows 2008

Коды ошибок, возвращаемые PsExec, относятся к выполняемым вами приложениям, а не к PsExec. Если psexec успешно подключится и запустит целевую программу, он вернет уровень ошибки из этой программы. 0 - обычно успех, 1 - неправильный / недействительный / неудачный.

Что вы пытаетесь достичь? Возможно, вы можете настроить запланированную задачу для запуска сценария или какой-либо другой способ его запуска. Может быть, учетная запись службы, на которой запущен apache, не имеет разрешений на выполнение сценария?

РЕДАКТИРОВАТЬ: также попробуйте добавить флаг -accepteula к команде psexec в вашем PHP-коде. Возможно, он зависает при принятии лицензионного соглашения