Знаю что миллион раз обсуждалось, но хоть убейте не могу найти решение, то ли глаз замылил то ли в лыжи обутый.
Помогите с проблемой.
Необходимо автоматически забирать заявки с почты support@domen.com
- Приемник в glpi настроен, при нажатии кнопки "получить письма сейчас" письма проваливаются.
- Автоматическое задание в glpi работает только если нажать кнопку "выполнить",[more] когда приходит время автоматически выполнить его висит "Как только будет возможно".
Пробовал настроить cron:
#crontab -u www -l
SHELL=/bin/sh
*/1 * * * * php /usr/local/www/glpi/front/cron.php --force mailgate
#cat /var/log/cron
....
Mar 27 06:00:01 /usr/sbin/cron[88181]: (apache) CMD (php /usr/local/www/glpi/front/cron.php --force mailgate)
Mar 27 06:01:00 /usr/sbin/cron[42467]: (apache) CMD (php /usr/local/www/glpi/front/cron.php --force mailgate)
Mar 27 06:02:00 /usr/sbin/cron[19116]: (apache) CMD (php /usr/local/www/glpi/front/cron.php --force mailgate)
Mar 27 06:03:00 /usr/sbin/cron[96499]: (apache) CMD (php /usr/local/www/glpi/front/cron.php --force mailgate)
Mar 27 06:04:00 /usr/sbin/cron[71504]: (apache) CMD (php /usr/local/www/glpi/front/cron.php --force mailgate)
.....письма не проваливаются.
#su -m apache
%php /usr/local/www/glpi/front/cron.php --force mailgate
Письма проваливаютсяКак быть? И почему система работает по Московскому времени
#date
Thu Mar 27 10:09:15 MSK 2014
а cron в логах работает по другому
Mar 27 06:04:00
Да, баянная проблема. Нужно в настройках автоматических заданий, в задаче mailgate сменить способ выполнения на cli и прописать в крон что-то типа того, что вы указали выше.
> Да, баянная проблема. Нужно в настройках автоматических заданий, в задаче mailgate сменить
> способ выполнения на cli и прописать в крон что-то типа того,
> что вы указали выше.не сработало =(
>> Да, баянная проблема. Нужно в настройках автоматических заданий, в задаче mailgate сменить
>> способ выполнения на cli и прописать в крон что-то типа того,
>> что вы указали выше.
> не сработало =(Потому что я хрень посоветовал. В кроне должно быть что-то типа этого:
*/1 * * * * /usr/bin/php /var/www/glpi/front/cron.php
Эх.. молодой человеек! )) Действительно, ваша проблема "мильён раз" уже обсуждалась.
И на этом форуме неоднократно. И решение приводилось, подсказывали как правильно.Пишите в cron'е полные пути или указывайте правильный и всеобъемлющий PATH
например, после строки
SHELL=/bin/sh
указать
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbinну или писать полный путь, к php в данном случае, т.е.
вместо php указать /usr/local/bin/php (ну или где он там у вас находится)
посмотреть можно командой which phpитоговая строка будет
*/1 * * * * /usr/local/bin/php /usr/local/www/glpi/front/cron.php --force mailgateПо поводу времени, посмотрите что у вас указано в php.ini
cat /usr/local/etc/php.ini | grep timezone
исправьте при необходимости в соответствие с вашей временной зоной
>[оверквотинг удален]
> указать
> PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
> ну или писать полный путь, к php в данном случае, т.е.
> вместо php указать /usr/local/bin/php (ну или где он там у вас находится)
> посмотреть можно командой which php
> итоговая строка будет
> */1 * * * * /usr/local/bin/php /usr/local/www/glpi/front/cron.php --force mailgate
> По поводу времени, посмотрите что у вас указано в php.ini
> cat /usr/local/etc/php.ini | grep timezone
> исправьте при необходимости в соответствие с вашей временной зонойСПАСИБО ОГРОМНОЕ!!! все заработало. буду внимательнее впредь.
>>[оверквотинг удален]
>> итоговая строка будет
>> */1 * * * * /usr/local/bin/php /usr/local/www/glpi/front/cron.php --force mailgate
>> По поводу времени, посмотрите что у вас указано в php.ini
>> cat /usr/local/etc/php.ini | grep timezone
>> исправьте при необходимости в соответствие с вашей временной зоной
> СПАСИБО ОГРОМНОЕ!!! все заработало. буду внимательнее впредь.Может, тема и баянная, но мне поиск выдал именно ее, так что продолжу:
Достаточно в crontab (а у меня в /etc/cron.d/glpi указать это
*/1 * * * * /usr/local/bin/php /usr/share/glpi/front/cron.phpи собственный планировщик GLPI начинает выполнять все запланированные задания (собственно, запуск ..../front/cron.php) как раз и является той самой "возможностью", о которой он пишет в морде. Причем даже те, у которых в способе запуска указано GLPI, не только CLI.
Вдогонку выскажу предположение, что способ запуска определяет, какой php.ini будет использоваться - если GLPI, то .ini от httpd, если CLI, то .ini командной строки соответственно. У меня в Debian это /etc/php5/apache2/php.ini и /etc/php5/cli/php.ini