choć wielu z nas zadało wiele pytań związanych z pracą crona, pozwólcie, że zadam jedno ...
Chcę okresowo wykonywać skrypt PHP. Jako polecenia crona używam:
php -q http://www.example.com/cron.php?action=getA
Próbowałem też tego:
php -q /home/myuser/www.example.com/cron.php?action=getA
Nie wykonuje się i nie wysyła żadnej poczty. Ustawiam identyfikator poczty na mój identyfikator gMail . Co ja robię źle?
Send an email every time a cron job runs. less » You can have cron send an email everytime it runs a command. If you do not want an email to be sent for an individual cron job you can redirect the command's output to /dev/null like this: mycommand >/dev/null 2>&1 Current Email: [email protected]
Odpowiedzi:
To, co próbujesz, nie zadziała, ponieważ nie możesz przekazać zmiennych GET przez wiersz poleceń PHP i musisz albo uciec ze znaków zapytania, albo otoczyć ciąg cudzysłowami, gdy używasz znaków zapytania w wierszu polecenia.
To zadziała:
wget 'http://www.example.com/cron.php?action=getA'
źródło
Co powiesz na:
czy na pewno masz www.example.com jako swoją ścieżkę?
wykonaj następujące czynności w pliku cron.php
Zwróci ci dokładny katalog, w którym znajduje się plik cron.php, i użyj php -q w twoim cronie.
Myślę, że powinieneś użyć czegoś takiego na cPanel:
źródło