exec, system, passthru - ошибка 127.

dk

Новичок
exec, system, passthru - ошибка 127.

Я хочу запустить внешний скрипт из PHP посредствам ф-ий system, exec или passthru - результат любой команды: ошибка 127.
(не может найти такую команду)
Я пробовал указывать полные пути, проверял права доступа, пробывал запускать exec('ls');
Но результат тот же.

Все эти команды на одном хосте работают, а на другом нет.

Более того. Так же не работают функции типа opendir, is_dir...
Например, is_dir("/bin") - результат false.

в php.ini
disable_functions пустая.

Подскажите, пожалуйста, куда посмотреть.
 

dk

Новичок
я ставил права 777 на каталоги, которые смотрел.
Я пытался запускать скрипт рядом лежащий...
 

svetasmirnova

маленький монстрик
safe_mode ?
В случае работы в безопасном режиме, вы можете запускать что-либо только в пределах safe_mode_exec_dir. В настоящее время, использование .. в пути запрещено
 

dk

Новичок
выключен.

-~{}~ 28.10.05 23:41:

а safe_mode_exec_dir пустой.

-~{}~ 28.10.05 23:45:

Хотя и при попытке выполнить exec('./../script');
выдается Warning о том, что использование '..' в пути запрещено.
 

dk

Новичок
Вомзожно, но мне надо либо как-то обойти эту проблему и запустить перловый скрипт, либо хотя бы понять, каких разрешений мне не достаточно и что надо изменить в настройка сервера. Очевидно, что блокируются системные вызовы.
Лучше всего вариант №1 :).
 

dk

Новичок
В php.ini
safe_mode = Off
safe_mode_gid = Off
safe_mode_include_dir =
safe_mode_exec_dir =

А в phpinfo
safe_mode On Off
safe_mode_exec_dir no value no value
safe_mode_gid Off Off
safe_mode_include_dir no value no value
 

dacuan

Новичок
dk
127-я ошибка у меня возникала, когда не указывались полные пути к запускаемым программам, например следует использовать не ls, а /bin/ls.

Узнать путь к программе можно запустив в консоли

which <имя_программы>

Например

which ls
 

dk

Новичок
Directive: safe_mode
Local Value: On
Master Value: Off

-~{}~ 30.10.05 17:24:

127-я ошибка у меня возникала, когда не указывались полные пути к запускаемым программам, например следует использовать не ls, а /bin/ls.
--
Пробовал. ls - это уже от безисходности.
Главная задача выполнить на php perl-овый скрипт.
Раньше я это делал с помощью exec. А вот столкнулся с сервером, на котором это не работает.
Может есть другие способы обойти exec, system, passthru?
 

dacuan

Новичок
dk
Пробовал указывать полный путь к Perl-скрипту на сервере?
 

dk

Новичок
Автор оригинала: svetasmirnova
В .htaccess что ли? Так убери это "Local Value: On"
Откровенно говоря, я не понял как это сделать.
+ .htaccess для ветки сайта нет.
Если правильно понимаю, тогда работают чисто настройки сервера. А что там такого поменять я не знаю.
Или какой надо написать .htaccess, что бы выключить этот "Local Value"

На том хосте, где скрипты запускаются, Local Value: Off.
 

svetasmirnova

маленький монстрик
>На том хосте, где скрипты запускаются, Local Value: Off.
Слава богу =) safe_mode таки. Про .htaccess я погорячилась (PHP_INI_SYSTEM). Так что к хостеру разбираться что можно запускать, а что нельзя. И пускай safe_mode_exec_dir прописывает.
 

dk

Новичок
Cпасибо большое. safe_mode_exec_dir спасло ситуацию.
 
Сверху