EXEC кроном

Зека

Новичок
EXEC кроном

где я не прав?
PHP:
set_time_limit(0); 

$d = dir('/admin/foto/');
 while (false !== ($entry = $d->read())) 
  { 
   if ($entry != '.' && $entry != '..' && $entry != 'school') 
    {
     if(is_dir('/admin/foto/'.$entry))
      {
       exec ('cp -rf /hsphere/local/home/user/domen.ru/admin/foto/'.$entry.'/* /hsphere/local/home/user/'.$entry.'.domen.ru/foto/'); 
      }
     else
      { }
    }
  }
$d->close();
Все пути верные...проверял руками.
 

Зека

Новичок
крон запускаеться, проверял..... создавал файл и писал в него некий текст, запуск каждые 5-ть минут , пока для теста работоспособности.
Зашел по SSH запустил cp с параметрами из скрипта, все работает, может дело в php.ini ? как проверить возможность исполнения exec?
 
Зека
echo `ls -l`;

error_reporting(E_ALL); ini_set('display_errors', true); покажет сообщение если shell заблокирован.
 

Зека

Новичок
Как такое может вообще быть?
Запускаю файл руками, выполняет exec
пихаю в крон (при этом делаю запись в файл для проверки работоспособности крона), в файл пишет (т.е. крон работает), а exec не выполняет....это как?

-~{}~ 02.08.07 12:43:

error_reporting(E_ALL); ini_set('display_errors', true);
без ошибок
 

Alexandre

PHPПенсионер
что записано в кроне??
я не получил ответа...
самая распространенная ошибка - в крон надо писать полные пути, в том числе и путь до вызываемого приложения, в нашем случае - это РНР.

запусти любой другой РНР файл по крону и проверь - пишет он что-нибудь в лог или нет.

так же смотри логи крона

-~{}~ 02.08.07 13:39:

if(is_dir('/admin/foto/'.$entry))
а это полный путь????

-~{}~ 02.08.07 13:41:

перемести свой скрипт в любой другой каталок (за пределами /hsphere/local/home/user/domen.ru/admin/foto/)и запусти его из шела (php <filename>)

замени команду exec на echo и посмотри - выполняется она или нет!

-~{}~ 02.08.07 13:42:

добавь echo 'dir /admin/foto/.. not found'
 

Зека

Новичок
оказываеться крон у хостера стартует с ПХП.ИНИ хостера!!!
а там экзек отключен!
т.е. необходимо было дописать путь до своего ПХП.ИНИ в строке запуска скрипта
/hsphere/shared/php5/bin/php -с/hsphere/local/home/user/www/cgi-bin/php.ini ................... ит.д.

-~{}~ 02.08.07 14:31:

а откуда я мог знать это?
 

Зека

Новичок
Помогите найти ошибку и может кто скажет, какие параметры улучшить, если это вообще нужно.
ошибка от крона..... на мыло: PHP: Error parsing /hsphere/local/home/user/www/cgi-bin/php.ini on line 17

# Для повышения безопасности работы PHP
register_globals = off
allow_url_fopen = on

# Опция разрешает URL include
allow_url_include = on

# Ограничивает файлы, которые могут быть открыты в PHP
#open_basedir = "= /hsphere/local/home/__USER__/:."

# Путь для сохранения сессий
#session.save_path = /hsphere/local/home/__USER__/tmp

# Автокавычки
magic_quotes_gpc = off

# Порядок обработки переменных EGPCS (Environment, GET,POST, Cookie, Server)
variables_order = GPCS

# Разрешает закачку файлов
file_uploads = On

# Максимальный размер загружаемого файла:
upload_max_filesize = 2M

# Директория для временного хранения загружаемых файлов
#upload_tmp_dir = /hsphere/local/home/__USER__/tmp


# Максимальный объем памяти, который разрешаетсяиспользовать скрипту
memory_limit = 8M


# Максимальное время исполнения скрипта, секунд
max_execution_time = 30

# Максимальный размер данных POST, который PHP сможетпринять
post_max_size = 8M

# Вывод ошибок в браузер
display_errors = off
error_reporting = E_ALL

# Вывод ошибок при старте PHP
display_startup_errors = Off
 
Сверху