ugrás a tartalomhoz

Mail küldés, Cron-al időzítve...

vtsoftware · 2010. Jún. 4. (P), 18.09
Sziasztok

Az első kérdésem...
A tárhelyen létrehozom a Cron időzítéseket.
Ez eddig rendben.
De nem indul el. A számláló is 0-n marad, egyszer sem fut le.
Ezt PHP-ből kellene elindítani esetleg?

A második az, hogy hogyan lehet PHP-ből Cron "bejegyzést" indítani.
Tehát PHP-ből szeretnék Cron időzítést beállítani. Hogy ne legyen annyira bonyolult a dolog.

A harmadik kérdésem.
Adott egy Cron futtatás, minden hét Péntekére, 19.00-ra beállítva.
Ebben a fájlban hogy tudok e-Mail küldeni - több száz levélről lehet szó - úgy hogy ne legyen szerverterhelő, ne haragítsam magamra az üzemeltetőt.
Ha for ciklusban küldöm, akkor az futhat több percig is.
Erre gondolom azt hogy szerverterhelő... de lehet tévedek.
Milyen módszert tudnátok nekem ajánlani erre a problémára?
Gondolkodtam azon hogy a levelek adatait összeszedném 10 perccel előbb - első lépésben - ezeket egy tömbbe raknám, elindítanám a második cront (márha lehet ilyet, ha lehet, nagy teher esik le a vállamról...), amiben a második lépéstől végiglépkednék a tömbön.

Előre is köszönöm
 
1

Szempontok

janoszen · 2010. Jún. 4. (P), 18.49
Én a helyedben úgy állítanám be a cront, hogy óránként fusson és ebben nézd meg, van-e teendő. Azt semmiképp ne csináld hogy PHPból konfigurálod. Figyelj arra, hogy a PHP fájlon legyen execute jog és a fájl elején hashbang sor. Ha Windows alatt szerkeszted ügyelj arra, hogy semmiképp ne legyen benne BOM karakter.

A szerverüzemeltető haragját elkerülendő nagyon figyelj arra, hogy a cronjobok ne fussanak egymásra és csak olyan címzettnek küldj hírlevelet aki ebbe előzetesen, megerősítő maillel bele egyezett. A return path legyen létező e-mail cím, a visszapattanókat vedd ki a listából.
2

Miért ne?

vtsoftware · 2010. Jún. 4. (P), 19.03
Miért nem ajánlod a PHP-ből konfigolást?

A hashbang az ez lenne vagy Shebang-ra gondoltál?
"#!/usr/local/bin/php"

Nem hírlevél küldéshez kell, jelen esetben, későbbiekben ki tudja :)

A levelek e-Mail megerősítéssel történt regisztráció után mehetnek csak el.
Tehát csak regelt ember "juthat idáig" hogy ilyen levelet egyáltalán kaphat...
De a tanács mindig jól jön, köszönöm.
3

Mert nem jó

janoszen · 2010. Jún. 4. (P), 19.20
Egyrészt: nem tudhatod, hogy mikor dönt úgy a rendszergazda hogy kiveszi a crontab binárist az általad elérhető helyek listájából és tesz be helyette egy csinos webes felületet. Másrészt ha az alkalmazásodban biztonsági hiba van, gyönyörűen lehet majd a trükkösebbnél trükkösebb shellbotokat elindítani a Te nevedben.

Ami a shebang/hashbang line kérdést illeti, szerintem igen kevesen telepítenek a /usr/local alá PHP-t (hacsak nem kézel van forgatva). Ezt meg kell nézni a szerveden.
4

Bérelt szerver...

vtsoftware · 2010. Jún. 4. (P), 19.30
Értem, lebeszéltél a PHP-ből konfigolásról ;-)

Azt a bizonyos shebang sort csak példaképp írtam, hogy ilyenre gondoltál-e, de akkor igen.
Hol tudom megnézni a PHP könyvtárát?
Esetleg a $_SERVER["PATH"] változóban találom?

Elnézést a balekoskodásért, de ez nekem új terület...
5

Kérdezd meg

janoszen · 2010. Jún. 4. (P), 22.53
Ezt sajnos kénytelen leszel megkérdezni a rendszergazdádtól mert a webes PHP-ból nem fog kiderülni, hol lakik a CLI változat. Én mondjuk vagy /usr/bin/php-val vagy /usr/sbin/php-val próbálkoznék a használt oprendszer függvényében. Esetleg a /opt vagy /usr/local könyvtárakban ha ezotikus a gép.
6

Hát jó

vtsoftware · 2010. Jún. 5. (Szo), 00.08
Rendben, köszönöm szépen...
Nem próbálkozok, mert ígyis-úgyis beszélnem kell majd valakivel, nem csak egy gond akad.
A fejleményeket majd leírom, más hátha "profitál" belőle.