Saya hanya mencoba menjalankan skrip PHP menggunakan tugas cron dalam CPanel - apakah ini sintaks yang benar:
/usr/bin/php -q /home/username/public_html/cron/cron.php >/dev/null
Saya tidak mendapatkan pemberitahuan email yang menyatakan bahwa cron telah selesai, apakah saya perlu melakukan sesuatu yang spesifik dengan file PHP?
Jawaban:
Dalam sistem crontab:
/usr/bin/php
adalah php biner jalan (yang berbeda di beberapa sistem ex: freebsd/usr/local/bin/php
, linux:/usr/bin/php
)/home/username/public_html/cron/cron.php
harus menjadi jalur skrip php Anda/dev/null
harus berupa keluaran cron, misalnya:/home/username/stdoutx.txt
Jadi, Anda dapat memantau cron Anda dengan melihat keluaran cron
/home/username/stdoutx.txt
sumber
Saya menggunakan perintah ini untuk mengaktifkan tugas cron untuk ini.
di server GoDaddy, dan berfungsi dengan baik.
sumber
-q
?-q
adalah untuk mode Diam, menekan keluaran header HTTP>/dev/null
menghentikan cron mengirim email.sebenarnya menurut saya lebih baik membuat
php
skrip itu sendiri untuk memperhatikan loggingnya daripada hanya mengeluarkan sesuatu ke cronsumber
>/dev/null 2>&1
di bagian akhir juga .../path/to/file.php > /dev/null
akan diam.Ini cara termudah:
php -f /home/your_username/public_html/script.php
Dan jika Anda ingin memasukkan output skrip ke file, tambahkan ini ke akhir perintah:
>> /home/your_username/logs/someFile.txt 2>&1
sumber
Inilah caranya:
sumber
Garis cron ini berfungsi untuk saya di VPS hostgator menggunakan cpanel.
sumber
Saya mengalami masalah saat menggunakan / usr / bin / php di CPanel karena ia dikompilasi sebagai biner "cgi-fcgi" dan bukan "cli". Coba gunakan / usr / local / bin / php atau, karena yang pertama ada di jalur, cukup gunakan 'php' sebagai gantinya:
Jika Anda ingin menjalankan skrip sebagai file yang dapat dieksekusi, berikan + x perms dan gunakan baris berikut sebagai baris pertama skrip:
sumber
Saya harap masalah Anda ada pada path & php binary juga. Jika Anda telah memperbaiki jalur sesuai jawaban yang lebih lama, silakan gunakan php-cli alih-alih perintah php saat menjalankan cron job.
Mungkin saja
php_sapi_name()
tidak kembalicli
. Itu mengembalikan sesuatu yang lain seperticgi-fcgi
dll./usr/bin/php-cli -q /home/username/public_html/cron/cron.php >/dev/null
Saya harap ini akan membantu.
sumber
Ini berfungsi dengan baik dan juga mengirim email:
/ usr / bin / php /home/xxYourUserNamexx/public_html/xxYourFolderxx/xxcronfile.php
Dua perintah berikut juga berfungsi dengan baik tetapi jangan mengirim email:
/ usr / bin / php -f / home / Sama Seperti Di Atas
php -f / home / Sama Seperti Di Atas
sumber
Disarankan Oleh Para Ahli.
sumber
Ini sebenarnya sangat sederhana,
sumber
Untuk Multi PHP Cron Job khusus domain , lakukan seperti ini,
Dalam contoh di atas, ganti "ea-php56" dengan versi PHP yang ditetapkan ke domain yang ingin Anda gunakan.
Semoga ini bisa membantu seseorang.
sumber