Tema: Re: Cron neiraso i textini faila
Autorius: ManXP
Data: 2013-06-13 16:53:10
My bad, net nepagalvojau, kad kas nors gali sumastyt leist cronus nenurodes 
pilno kelio :)


"Laimis"  wrote in message news:kp9d7s$j8o$1@trimpas.omnitel.net...

ManXP rašė:
> Nezinau, kas ten per softas ant serverio, jeigu permissionai veikia
> skirtingai per cronjoba nei per browseri. Neteko dar susidurt su tokia
> nesamone

Permission'ų problema ta pati, bet ji visiškai neakivaizdi leidžiant per
cron'ą, o rezultatas — neveikia. Reikia debug'inti...

O kitos „nesąmonės“ esmė yra gana paprasta:

Surenki konsolėje (shell'e)
> php cron.php

ir — o kiek laimės — pasileidžia!, viskas veikia!
Nes shell'o environment'e, PATH kintamajame nurodyta, kad binarikų
ieškotų, tarkime /usr/bin:/opt/php/bin...
Tai va ir susiranda tą php iš PATH nurodytų katalogų ir paleidžia.
Atitinkamai ir cron.php iš esamo katalogo pasigriebia.

cron'as savo ruožtu veikia praktiškai _tuščiame_ environment'e; PATH
tėra tik keletas sisteminių katalogų, tad jei php sėdi kur
/usr/local/bin ar — tuo labiau — dar mažiau „standartinėje“ vietoje, tai
ta pati komanda tiesiog negali suveikti, nes nerandamas net pats php
interpretatorius jai įvykdyti.

Todėl visuomet reikia atsiminti nurodyti _pilną_, VISĄ kelią, pvz.:
/full/path/to/php_bin /full/path/to/cron.php