У меня на компьютере установлены apache 2.4.12 и php 5.5.21. Я пытаюсь получить файл java jar для выполнения с помощью php exec (). Когда я размещаю программу php в папке вне apache htdocs, она открывается и запускает файл jar без проблем. Когда я запускаю ту же самую программу из папки apache (в папке htdocs), ничего не выполняется, и веб-браузер просто остается в стадии загрузки (браузер зависает и в конечном итоге просто отключается). Я думаю, что я видел каждый пример там и не могу точно определить, где проблема. Это, безусловно, проблема с разрешениями; Мне просто нужно указать в правильном направлении.
Echo shell_exec («whoami»); дает мне «ntauthority / system. Когда я захожу в сервисы и меняю логин apache на администратора, ничего не происходит. У меня есть права на чтение и выполнение файла jar при попытке выполнить.
Если это общий хост, вам, возможно, придется поговорить с вашим хостинг-провайдером.
Если у вас есть доступ к вашему httpd.conf
в Apache, отредактируйте файл, нажмите CTRL + F и убедитесь, что safe_mode
значение установлено в Off
, Если вы не видите safe_mode
установка в любом месте файла, добавьте эту строку:
php_admin_flag safe_mode Off
Убедитесь, что буква «O» написана заглавными буквами! (Источник)
Если это не проблема, то убедитесь, что ваш disabled_functions
в вашем php.ini
файл не содержит exec
,
Если тот не проблема, попробуйте посмотреть, если ваш php.ini
содержит safe_mode
переменная. Если нет, добавьте эту строку:
safe_mode = Off
Опять же, если файл имеет safe_mode
переменная, установите его Off
!
Я установил Apache в качестве службы через командную строку, и файл JAR не запускался. Когда я удалил Apache в качестве службы и вручную запустил «httpd.exe». файлы jar подошли и выполнили. Я мог выполнить их только на той машине, у меня все еще были проблемы при попытке выполнить их на клиентских машинах. Я пошел по пути использования Java WebStart, и кажется, что его легче развернуть и использовать. Спасибо