хотя многие из нас задавали много вопросов, связанных с работой cron, позвольте мне задать свой вопрос ...

Я хочу периодически выполнять скрипт PHP. В качестве команды cron я использую:

php -q http://www.example.com/cron.php?action=getA

Я также попробовал это:

php -q /home/myuser/www.example.com/cron.php?action=getA

Он не исполняется и не отправляет почту. Я установил почтовый идентификатор для своего идентификатора gMail. Что я делаю неправильно?

2 ответа2

1

То, что вы пытаетесь, не будет работать, так как вы не можете передавать переменные GET через командную строку PHP, и вам нужно либо экранировать вопросительные знаки, либо заключать строку в кавычки при использовании вопросительных знаков в командной строке.

Это будет работать:

wget 'http://www.example.com/cron.php?action=getA'

0

Как насчет:

wget http://www.example.com/cron.php?action=getA

Вы уверены, что у вас есть www.example.com в качестве пути?

выполните следующее в вашем cron.php

<?php
// current directory
echo getcwd() . "\n";
?>

Это вернет вам точный каталог, где находится ваш файл cron.php, и использование php -q в вашем cron.

Я думаю, что вы должны использовать что-то вроде этого на cPanel:

php -q /home/myuser/public_html/cron.php?action=getA

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .