Как вывести содержимое файла PHP в файл журнала, используя wget в задании cron?

Фон

У меня в сети запущено устройство NAS QNAP, и я хочу периодически запускать задание cron для вызова веб-страницы, которая затем обновит службу динамического DNS с использованием публичного IP-адреса моего маршрутизатора. Я хочу быть в состоянии взять выход из этого файла PHP и добавить в файл журнала.

Для тестирования я создал файл test.php, который просто возвращает некоторый текст.

Вот соответствующие кусочки:

https://www.example.com/test.php

<?php
echo "Hello world!\n";
?>

updateddns.sh

# updateddns.sh
########## Edit the following lines ##########
Logfile="/share/Public/ddns.log"URL="https://www.example.com/test.php"Token="lPpbyP22M1ePvthsJ0uO"##############################################
date >> $Logfile
wget -4q -O - --post-data="auth=$Token" $URL >> $Logfile
echo "Complete" >> $Logfile

crontab (выдержка)

*/5 * * * * /bin/sh /share/Public/updateddns.sh

DVNK5C ~ Q (выдержка)

Fri Jan 19 10:00:00 GMT 2018
Complete
Fri Jan 19 10:05:00 GMT 2018
Complete
Fri Jan 19 10:10:00 GMT 2018
Complete
Fri Jan 19 10:15:00 GMT 2018
Complete
Fri Jan 19 10:20:00 GMT 2018
Complete
Fri Jan 19 10:25:00 GMT 2018
Complete
Fri Jan 19 10:30:00 GMT 2018
Complete

Как видите, запущенное задание cron регистрирует дату и текст «Complete», но ничего из команды wget. Еще одна вещь, на которую следует обратить внимание, это то, что вместо записи в ddns.log выходные данные записываются в файл с именем DVNK5C ~ Q (при просмотре в Windows), который выглядит так, как будто он называется ddns.log ?? при просмотре в командном окне оболочки.

Если я запускаю команду wget непосредственно из командной строки, она работает, и я получаю «Hello world!» записан в правильный файл ddns.log.

Кто-нибудь указывает мне правильное направление здесь?

Спасибо,
Стюарт.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]