Debian webszerveren nem megy a PHP mail küldés

Fórumok

Szóval a php-s mail küldés nem megy valamiért a szerveren, én úgy emlékszem régen jó volt, de ebbe már nem vagyok biztos. Az érdekessége a dolognak, hogy azokra az e-mail címekre elküldi az e-mailt, melyek ezen a szerveren vannak kiszolgálva, többire nem!

Tudnátok segíteni?

Hozzászólások

Bocsi, szerinted ennyi alapjan kitalalja valaki a te beallitasaidat, es hogy mi a hiba bennuk? Szetintem nem.
Ez kb olyan, (de nem, arra konkretabbat lehet valaszolni) hogy regen mintha tudtam volna repulni de most nem megy, csak zuhanni tudok, mi lehet a baj...

Szerintem nem kell ehhez semmilyen info... :D

Ha megy arra a gépre, amin megy a PHP, akkor szerintem az MTA-val van a gond...
Gondolom a naplójában ilyeneket találsz: "Relaying denied..."

Debian Linux rulez... :D

Hú nem volt egy egyszerű meló kiszedni :D
Na itt van:
May 3 13:37:01 ns9 postfix/pickup[20773]: 503B0809C8B: uid=33 from=
May 3 13:37:01 ns9 postfix/cleanup[24351]: 503B0809C8B: message-id=<20080503113701.503B0809C8B@ns9.1s.hu>
May 3 13:37:01 ns9 postfix/qmgr[2396]: 503B0809C8B: from=, size=848, nrcpt=2 (queue active)
May 3 13:37:01 ns9 postfix/virtual[24962]: 503B0809C8B: to=, relay=virtual, delay=0, status=sent (delivered to maildir)
May 3 13:37:01 ns9 postfix/virtual[24930]: 503B0809C8B: to=, relay=virtual, delay=0, status=sent (delivered to maildir)
May 3 13:37:01 ns9 postfix/qmgr[2396]: 503B0809C8B: removed

Khmm, ez egy bejövő levél logja. Minket a kimenő levél naplója érdekelne...

Pl:


May  5 06:29:07 mail postfix/qmgr[24541]: 534161BE07: from=<root@example.hu>, size=1424, nrcpt=1 (queue active)
May  5 06:29:07 mail postfix/smtp[27293]: 141A01BE01: to=<root@anotherexample.hu>, orig_to=<root>, relay=127.0.0.1[127.0.0.1]:10024, delay=233, delays=233/0/0/0.14, dsn=2.6.0, status=sent (250 2.6.0 Ok, id=25028-08, from MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as 534161BE07)

Ok, ebből az látszik, hogy a maildir-nek átadta a postfix, de nem látom, hogy egy külső smtp-vel felvette volna a kapcsolatot...

Debian Linux rulez... :D

Sajna ennyi van. :(
Amúgy az alábbi kóddal küldeném a mailt:

<?php

$cimzett  = 'farkas77@externet.hu, info@farkasweb.hu';
$targy    = 'the subject';
$uzenet   = 'hello';
$fejlecek = 'From: akarmi@akarmi.hu' . "\r\n";
$fejlecek .= 'MIME-Version: 1.0' . "\r\n";
$fejlecek .= 'Content-type: text/html; charset=iso-8859-2' . "\r\n";

//$uzenet = file_get_contents ("./hirlevel_alap.htm");

mail($cimzett, $targy, $uzenet, $fejlecek);

print "üzenet element";

?>

Na akkor...

Ha jól tudom, akkor a PHP-nek van egy opciója, amiben megmondod, milyen címen lévő MTA-val beszélgessen... Nálad a localhost van beállítva... ahogy látom...
Tehát minden mail hívásod helyben landol...
És mivel azt mondtad, hogy a helyi gépre elmennek a levelek, ebből az következik, hogy nem a PHP a hibás, hanem a postfix-ed...

Az alábbi parancsokra mit csinál?


telnet localhost 25

helo localhost
mail from: luser@luser.hu
rcpt to: luser@luser.hu
data
.

Fogadok, hogy az rcpt sor után kiabál...

Debian Linux rulez... :D


mailq ???

:D

Debian Linux rulez... :D

" többire nem!"

Erre figyeld meg a "tail -f /././mail.log"-ot és jegyezd fel a hibaüziket,
amikor a "többire" küldesz.

Minden bizonnyal jót néztél, de biztos ami biztos alapon visszakérdezek. Nem biztos, hogy ez a beállítás okozza a bajt, de járjuk körül tejesen. A megfelelő php.ini volt-e, illetve php_admin_value-val nincs-e felülírva az Apache konfigjában?

grep sendmail /etc/php*/*/php.ini

Parancssorból működik?

php -f teszt.php

Milyen verziójú php-t használsz?

hello,

mail() fv, 5. paraméter...

mail("...", "...", "...", "", "-fuser@valami.hu");

és nagy valószínüséggel el fog indulni.

a.