CronTab: Не выполнение моих Сценариев PHP?

Если все, Вам нужен он перетаскивающий wwindows от одной Рабочей области до другого, Настольных Эффектов в Linux, дает Вам точно, что Вы хотите со всеми своими рабочими областями на кубе, который Вы можете:

  • вращайтесь с мышью
  • перетащите окна через рабочие области.

Для большего количества Информации: можно отослать к этому Google книги Ссылка


Однако это никоим образом не сопоставимо с рабочей станцией с 2 мониторами. Можно даже рассмотреть старый CRT, которые доступны за Очень дешевые цены теперь

2
задан 13 April 2017 в 15:13
9 ответов

Можно использовать веб-версию в кроне, если ДОБИРАЮТСЯ (lwp-запрашивают), или завихрение установлено на сервере

ДОБРАТЬСЯ

* * * * * GET http://localhost/cron/sendQueuedEmails.php > /dev/null

завихрение

* * * * * curl -o /dev/null http://localhost/cron/sendQueuedEmails.php
2
ответ дан 3 December 2019 в 11:10
  • 1
    Что небезопасно об этом методе? можно всегда взламывать sendQueuedEmails.php для выполнения только если полученный доступ от localhost. –  sajal 6 August 2010 в 11:37

Учтите моего кузнечика совета! Здесь, сделанный это. Сделайте это простой способ и используйте cgi версию php "/usr/bin/php-cgi". Если Вы не имеете его, устанавливаете его "склонный - получают установку php5-cgi"

Не верьте мне? Попробуйте это.

В Вашем каталоге создают текстовый файл под названием test.txt и добавляют некоторый случайный текст внутри. Теперь создайте новый каталог, названный тестом, и файл в нем звонил, test.php затем добавляют этот код:

<?php

include '../test.txt';

?>

Ваша структура каталогов должна выглядеть примерно так:

/yourdirectory
/yourdirectory/test.txt
/yourdirectory/test/test.php

Измените на корневой каталог "CD /" и выполните это от командной строки:

/usr/bin/php-f/yourdirectory/test/test.php

и затем

/usr/bin/php-cgi-f/yourdirectory/test/test.php

Видеть различие?

1
ответ дан 3 December 2019 в 11:10

Более простой способ протестировать, выполнима ли строка с cron:

env -i bash -i /dev/null <actual command>
0
ответ дан 3 December 2019 в 11:10

Проверьте/var/log/cron и посмотрите, выполняется ли он на самом деле. Если это, попробуйте sudo-u, чтобы видеть, дает ли это ошибки.

0
ответ дан 3 December 2019 в 11:10

Также - я попытался бы использовать полный путь для php исполняемого файла. Обычно это - '/usr/bin/php', но можно выйти 'который php' для проверения этого дважды для системы.

Ваши записи выглядели бы примерно так:

          • CD/var/www/cron;/usr/bin/php-f sendBulletinEmails.php
          • CD/var/www/cron;/usr/bin/php-f sendSurveyEmails.php

Кроме того, если Вы только изменение каталога так, чтобы файлы были в текущем каталоге, можно всегда изменять крон, чтобы быть:

          • /usr/bin/php-f/var/www/cron/sendBulletinEmails.php
          • /usr/bin/php-f/var/www/cron/sendSurveyEmails.php

Надеюсь, это поможет.

0
ответ дан 3 December 2019 в 11:10

Прямо сейчас эти сценарии могут отправлять свой вывод в битоприемник, и Вы не будете знать, почему они перестали работать. Ваш cronjobs не может быть настроен для отправки электронного письма, или электронная почта в системе не может работать.

Я не поклонник пользования электронной почтой производства крона, частично потому что люди всегда думают, что нормально массово рассылать вывод для 'базирований', и я - тот, который получает то электронное письмо. Так как в большинстве случаев мы говорим приблизительно 1-2 строки вывода, я предлагаю, чтобы Вы зарегистрировали вывод своего cronjobs к системному журналу.

* * * * * { cd /var/www/cron && php -f sendBulletinEmails.php ;} |/usr/bin/logger -t sendBulletinEmails
* * * * * { cd /var/www/cron && php -f sendSurveyEmails.php ;} |/usr/bin/logger -t sendSurveyEmails
0
ответ дан 3 December 2019 в 11:10

Добавьте, что папка, содержащая, "включает" папку в Ваш включала путь. Найти это использованием locate swift_required.php

0
ответ дан 3 December 2019 в 11:10

На основе Вашего исходного вопроса и кода Вы отправили, Вы пропускаете строку хижины, которая необходимо было бы выполнить Сценарий PHP этот путь. Попытайтесь изменить первые несколько строк на это:

#!/usr/local/bin/php5 -q
<?php

// your script here

?>

И необходимо иметь успех.

Конечно, замените/usr/local/bin корректным путем к Вашей установке PHP. Это не может быть то же. Вам только нужна эта начальная строка для выполнения его как задания крона, не при выполнении его от браузера.

0
ответ дан 3 December 2019 в 11:10

Эй... howz это зависающий essa? Вот два решения Вашей проблемы.

  1. Используйте полные пути для, включают файлы в Ваших сценариях. Потребность сделать это для всех включает. Если включать файл имеет другой, включает, необходимо будет обновить их также.

включайте '../somefile.php' должен быть, включают '/somedir/somefile.php'

  1. Если № 1 не будет работать, или Вы не хотите использовать полные пути для, включает, то попытайтесь использовать php-cgi вместо php cli версия.

Также считайте этот раздел php ручного обращающего пристального внимания на cli и cgi различия.

http://www.php.net/manual/en/features.commandline.differences.php

SAPI CLI не изменяет текущий каталог на каталог выполняемого сценария!

Удар @ss!

0
ответ дан 3 December 2019 в 11:10

Теги

Похожие вопросы