Я уверен, что это просто, и я копался, но ни один ответ не был настолько конкретным, насколько мне нужно.
Цель проста: Cron попадал по URL-адресу на моем сервере каждые 5 минут. Все это настроено и работает нормально, проблема в том, что время доступа истекает. Однако на данный момент любой, у кого есть браузер, может получить к нему доступ.
Как обычно, дьявол кроется в деталях. Это сайт ExpressionEngine и, следовательно, PHP. Это беспорядок с Cron?
Существует также файл .htaccess, выполняющий перезапись, чтобы URL был менее подробным, мешает ли это Cron?
Это не та ссылка, которая мне нужна, но ее достаточно, чтобы опубликовать и дать представление.
http://204.15.99.54/site
site - это имя группы шаблонов в EE. Это попадает на его индексную страницу. На данный момент это просто IP-адрес без имени для разрешения (это вне моего контроля, в чьих-то руках).
Сценарий Cron, который я написал, не делает ничего особенного и в этом не нуждается, и просто должен запускаться каждые 5 минут.
Вот что у меня есть на данный момент:
wget -O - -t 5 http://204.15.99.54/site
^ Это было настроено через модуль Webmin Cron Scheduler.
Непонятно, о чем вы спрашиваете, но ни Expression Engine, ни URL-адрес PHP не мешают работе Cron. WGET просто действует как веб-клиент командной строки, и такой же анализ (веб-сервером и php) выполняется для URL-адреса, как если бы вы получили доступ к нему из веб-браузера на машине.
В случае сомнений вы можете временно изменить запись cron, изменив запись cron на что-то вроде
wget -O - -t 5 http://204.15.99.54/site >> /tmp/wget-result.html
А затем проверьте файл журнала, чтобы убедиться, что он работает должным образом.
Cron не смог добраться до самого сервера из-за некоторых проблем с DNS, поэтому предоставленный мной IP ничего не сделал. Теперь он работает без каких-либо сбоев.