Sziasztok
Csak nem találom a megfejtést, pedig keresem nagyon.
A mail() függvény által küldhető mailek számát hol tudom behatárolni?
Seholsenem találok rá utalást, hogy hogyan lehet megvalósítani a pl. max. 50 levél küldését.
Előre is köszönöm, ha vki tudja a megoldást, s még közli is.. :)
- 2304 megtekintés
Hozzászólások
mit akarsz pontosan csinalni?
- A hozzászóláshoz be kell jelentkezni
A formküldést akarom korlátozni, hogy pl. max. 50 űrlapot lehessen elküldeni.
Magyarul nem szeretném, ha spamerek használnák pl. a formmailt.
Két honlap van, ahol a készítő egyszerűen nem érti sem a register_globals off állapotot, sem azt, hogy legalább vmi spamszűrővel lássa el a formot.
A hétvégén az egyik form segítségével kb. 2000 mail ment ki, s ez kicsit felbosszantott..
- A hozzászóláshoz be kell jelentkezni
Erre a mail() nem alkalmas. MTA szinten kell limitet beallitanod.
- A hozzászóláshoz be kell jelentkezni
nem tulsagosan nehez.
a php.ini-ben a sendmail helyett allits be egy wrapper scriptet, pl igy:
sendmail_path = /usr/local/bin/trapmail
Majd hozz letre egy ilyen allomanyt, aminek a fo feladata az, hogy a sendmail-t meghivja - es hogy megcsinalhasd vele az access controlt.
Az enyem egy kicsit kiegesziti a level headerjet, de a vazat nyugodtan hasznalhatod a te problemadra is:
$ cat usr/local/bin/trapmail
#!/bin/sh
umask 077
TEMP=/tmp
CHROOT=11
trap "rm -f msg.$$ ; exit 1" 0 1 2 3 15
rm -f msg.$$ || exit 1;
cat | formail -f -I "X-sent-by-chroot: \"$CHROOT\"" >$TEMP/trapmail.$$
exec <$TEMP/trapmail.$$ || exit 1
rm -f $TEMP/trapmail.$$ # safe, we hold the file descriptor
exec /usr/sbin/sendmail -t -i "$@"
exit 1
NOTE: ez nem ved meg attol, hogy valaki system()-mel vagy exec()-cel meghivja a sendmail binarist kozvetlenul... De ezeket a hivasokat minden epeszu sysop elore letiltja.
asd
- A hozzászóláshoz be kell jelentkezni
A script megkap valamilyen kornyezeti valtozokat a php-tol? Gondolok itt pl. $_SERVER vagy hasonlo tombokre. Pl. vhostonkent kulonbozo limitek kezelesere.
- A hozzászóláshoz be kell jelentkezni
Igen, én is azon agyalok, vajon az atw, meg a többi free szolgáltató hogy oldja ezt meg?
- A hozzászóláshoz be kell jelentkezni
ezt mar neked kell kideritened. Szerintem csak egy standard kornyezetet kap.
asd
- A hozzászóláshoz be kell jelentkezni
Nincs ilyen konkrét beállítás.
A scripted írójának kellene beállítania, hogy
csak _POST
ellenőrzött űrlap (legalább egy sessionbe tárolt, Human ellenörző, pl egy eltorzított kép számjegyekkel), referer-t is ellenőrizni.
Addig szépen tilts le neki a mail fgv. használatát, és hivatkozz a "szolgáltatás veszélyeztetés"ére.
Gondolom szerződésben kikötöttetek ilyesmit.
- A hozzászóláshoz be kell jelentkezni
Köszönöm a segítséget. Hasonló kitétel van, nem lehet olyan kódot feltenni, amely lassítja a szerver, károkozásra használható..
MTA-ban (postfix) viszont lehet domainre korlátozni a www-datát? Hisz mindegyik mindegyiknek a sendere a www-data@szerver.hu.. Tehát max. 300 mail, s ki mennyit használ? Vagy nem?
Nah, ezzel megint elleszek..
- A hozzászóláshoz be kell jelentkezni
www-data@ annak a sendere, aki baszott megadni +1 parametert a mail() fuggvenynek. Magyaran megvaltoztathato.
asd
- A hozzászóláshoz be kell jelentkezni
miert nem logolod valahol hogy hany levelet kuldott? Azt ha mar elerte az 50et akkor nem rakod ki neki a formot csak egy uzenetet.
- A hozzászóláshoz be kell jelentkezni
Nem teljesen illik ide, de mivel kapcsolódik a témához belinkelek egy oldalt: https://rivendell.itk.ppke.hu/blog/articles/2006/10/20/php-mail-f%C3%BC…
- A hozzászóláshoz be kell jelentkezni
Köszönöm Tamás. Szvsz tökéletesen illik ide (is). Ha még jó is lennék angolból, istenem, de jó lenne. De a lényeget már hámozom..
- A hozzászóláshoz be kell jelentkezni
php.net -en.
ott azt írják, hogy ah nagy mennyiségű levelet küldesz, akkor ez a függvény nem alkalmas mert minden küldé egy szálat fog indítani és fagyizhatja a szervert. PEAR mail és hasonló cuccok jók erre.
de szerintem néhány 10 levélig nyugodtan használd... :)
- A hozzászóláshoz be kell jelentkezni