[debian] php en sendmail wil niet

Pagina: 1
Acties:

  • IceM
  • Registratie: Juni 2003
  • Laatst online: 19-02 18:20
Hallo,

Inmiddels heb ik apache(1.3.29) en php(4.3.6) aan het lopen.
Alles werkt goed, enkel de mail(); functie mailt niets.

Ik heb eerst apache etc gecompiled en geinstalleerd, en toen pas sendmail (opnieuw) geinstalleerd omdat deze een standaard config had die niet werkte.(ik heb exim er toen ook uitgesloopt, ik wist niet of die 2 naast elkaar konden draaien, dus het zekere voor het onzekere mar genomen)

Ik heb na de installatie van sendmail getest van een host in ons netwerk of hij werkte via telnet. Het resultaat:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
220 wiseguyz01 ESMTP Sendmail 8.12.3/8.12.3/Debian -4; Fri, 18 Jun 2004 21:15:55
 +0200; (No UCE/UBE) logging access from: [192.168.2.4](FAIL)-[192.168.2.4]
HELO loser
250 wiseguyz01 Hello [192.168.2.4], pleased to meet you
MAIL FROM:test@wiseguyz.org
250 2.1.0 test@wiseguyz.org... Sender ok
RCPT TO:iceman@******
250 2.1.5 iceman@******... Recipient ok
DATA
354 Please start mail input.
Test Mail Via Telnet
.
250 Mail queued for delivery.


En het mailtje komt inderdaad direct aan op mijn pop3 account. (dit is een externe pop3, alles lijkt dus te werken.)

Eerst maar eens gekeken waar mijn sendmail stond. Dit was /usr/sbin/sendmail.
Toen de php.ini opgezocht en hem zo ingesteld:
code:
1
2
3
4
5
6
7
8
9
[mail function]
; For Win32 only.
;SMTP = localhost

; For Win32 only.
;sendmail_from = me@example.com

; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = /usr/sbin/sendmail


Dit lijkt mij juist.
Toen wou ik de mailfunctie maar eens gaan testen via een testscriptje.
Deze bevatte devolgende code:
code:
1
2
3
4
5
<?PHP
error_reporting(E_ALL);

mail("iceman@*********", "test", "Just testing my php", "From: Test<********>");
?>


Dit zou alle errors en warnings moeten laten zien. (Ook in mijn php.ini staat error_reporting op E_ALL, ook hier maar het zekere voor het onzekere genomen ;)) Het mailscript laat ontzettend lang, wat volgens mij duidt op een timout oid.
Ik krijg alleen geen error c.q. warning te zien als hij geladen is. Ook de error_log van mijn apache laat niets zien over een fout in php.

Ik krijg ook geen locaal mailtje (op mijn root) dat hij iets niet kon verzenden.

Heeft iemand misschien een ideetje?

Ik heb op got gezocht, maar daar vond ik alleen maar posts van mensen waarbij hun sendmail niet goed werkte of waar hun php.ini niet goed ingesteld was. Dit is voor zover ik weet (van sendmail weet ik het zeker, van php.ini ben ik ook vrij zeker) niet het geval.

...


  • Helmet
  • Registratie: Januari 2002
  • Laatst online: 14-02 16:23
bekijk ook eens de logs van je server ik denk dat je de user NOBODY een trust moet geven in je sendmail configuratie

Icons are overrated


  • IceM
  • Registratie: Juni 2003
  • Laatst online: 19-02 18:20
Helmet schreef op 17 juni 2004 @ 21:33:
bekijk ook eens de logs van je server ik denk dat je de user NOBODY een trust moet geven in je sendmail configuratie
de syslog bedoel je? (sorry, ben toch nog wel beetje n00b in linux)
http://213.46.41.184/log1.txt
Dat zijn de laatste regels die erin staan. Wel wat over mail, maar ik word er niet wijzer van.

...


  • Helmet
  • Registratie: Januari 2002
  • Laatst online: 14-02 16:23
in fedora core krijg ik een "netwatch" report als er iets fout gaat met het mailen, probeer het commando mail eens (als root) en kijk eens of er iets van sendmail bij staat

Icons are overrated


  • IceM
  • Registratie: Juni 2003
  • Laatst online: 19-02 18:20
Helmet schreef op 17 juni 2004 @ 21:38:
in fedora core krijg ik een "netwatch" report als er iets fout gaat met het mailen, probeer het commando mail eens (als root) en kijk eens of er iets van sendmail bij staat
Mijn mail commando is er ook uitgesloopt (>:)). Ik krijg wel bericht als ik een mail ontvang, en dan staat hij in /var/mail/root (das een bestand). In het begin, toen sendmail niet goed werkte, stonden daar errors in. Hij is nu nog steeds leeg. Heb ook geen melding gekregen dat ik mail heb. (ssh toegang is constant aan, dus heb niks gemist)

...


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Zou je eens kunnen kijken wat er gebeurt als je die PHP file lokaal uitvoerd; doormiddel van `/usr/bin/php SCRIPTNAAM`; zie je dan wel iets? Controleer meteen je /var/log/maillog even :)

Heb je verder een FQDN die je kunt invullen? Vul anders je shorthostname eens in in je /etc/hosts misschien dat je dan van die errors afkomt :)

[ Voor 29% gewijzigd door Spider.007 op 17-06-2004 21:47 ]

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • KompjoeFriek
  • Registratie: Maart 2001
  • Laatst online: 02-01 05:18

KompjoeFriek

Statsidioot

Je heb toevallig als afzender niet een hotmail adres gebruikt hè?
zo wel, test het dan eens met je provider mail adres als afzender ;)

WhatPulse! - Rosetta@Home - Docking@Home


  • IceM
  • Registratie: Juni 2003
  • Laatst online: 19-02 18:20
Spider.007 schreef op 17 juni 2004 @ 21:45:
Zou je eens kunnen kijken wat er gebeurt als je die PHP file lokaal uitvoerd; doormiddel van `/usr/bin/php SCRIPTNAAM`; zie je dan wel iets? Controleer meteen je /var/log/maillog even :)

Heb je verder een FQDN die je kunt invullen? Vul anders je shorthostname eens in in je /etc/hosts misschien dat je dan van die errors afkomt :)
Bij mij stond hij niet in /usr/bin/php maar dat maakt neem ik aan niet veel uit?
Dit gaf hij iig als ourput: (maar hoe ik het moet fixen weet ik niet)
code:
1
2
wiseguyz01:/usr/local/bin# `php /home/ic3man/www/mailtest.php`;
bash: Recipient: command not found


en in de maillog's staan alleen maar warnings van mijn hostname die te lang is.

En FQDN? geen idee wat dat is, en al helemaal geen idee waar ik dat in moet vullen.
En naar die shorthostname zal ik eens kijken, maar ik neem aan dat het daar niet aan ligt, omdat sendmail wel gewoon een mail kan versturen.
Je heb toevallig als afzender niet een hotmail adres gebruikt hè?
zo wel, test het dan eens met je provider mail adres als afzender
Nee, zelfde afzender als ik dat ik met 1 van mijn telnet tests heb gebruikt.

[ Voor 11% gewijzigd door IceM op 17-06-2004 22:04 ]

...


  • lordgandalf
  • Registratie: Februari 2002
  • Laatst online: 13-02 15:00
het lijkt erop dat php struikelt over je FQDN (Fully Qualifyed Domain Name)

RCPT TO:iceman@******
250 2.1.5 iceman@******... Recipient ok

via telnet weet hij de ontvanger wel te vinden maar die error van php geeft volgens mij aan dat hij dat stukje dus niet kan doen en ik denk aangezien je het over een te lange hostname dat het daar ergens aan ligt

Steam: Profile / Socialclub: Profile / Uplay: minedwarf / Origin: lordgandalf3


  • IceM
  • Registratie: Juni 2003
  • Laatst online: 19-02 18:20
lordgandalf schreef op 17 juni 2004 @ 22:05:
het lijkt erop dat php struikelt over je FQDN (Fully Qualifyed Domain Name)

RCPT TO:iceman@******
250 2.1.5 iceman@******... Recipient ok

via telnet weet hij de ontvanger wel te vinden maar die error van php geeft volgens mij aan dat hij dat stukje dus niet kan doen en ik denk aangezien je het over een te lange hostname dat het daar ergens aan ligt
Ik weet niet precies welke hostname jullie bedoelen, maar ik heb mijn /etc/hosts maar even aangepast en wiseguyz01 veranderd in wise.

Toen hostname wise getyped in shell, en toen nieuwe shell geopend waarin hij inderdaad wise heete.

Ik krijg nog steeds dezelfde error:
code:
1
2
3
wise:/usr/local/bin# `php /home/ic3man/www/mailtest.php`;

bash: Recipient: command not found


Moet Recipient een standaard linux commando zijn? Als dat zo is, die heb ik dus niet.

...


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Je moet zelf even de backticks eraf slopen :D

dus
php /home/ic3man/www/mailtest.php
:) Is meer notatie van mij die ik wellicht de volgende keer niet meer moet gebruiken, of juist verduidelijken :)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • IceM
  • Registratie: Juni 2003
  • Laatst online: 19-02 18:20
Zonder de backticks (nooit geweten dat die krengen zo werden genoemt :)) zegt hij:
Recipient names must be specified

[ Voor 25% gewijzigd door IceM op 18-06-2004 08:28 ]

...


  • IceM
  • Registratie: Juni 2003
  • Laatst online: 19-02 18:20
Nouja, dat het gaat werken in sendmail zie ik zo snel nog niet gebeuren. Ik vind de config ook nogal lastig en heb het er daarom maar weer afgesloopt.

Nu heb ik postfix geinstalleerd, wat een hele verademing is :) Alles werkt meteen.

Alleen heb ik nu geen idee hoe ik php hiermee moet laten mailen ipv met sendmail. Simpel /usr/sbin/sendmail -t -i vervangen in /usr/sbin/postfix -t -i werkt niet. (had ik ook wel verwacht).

Ik kan alleen nergens vinden hoe ik dit in moet stellen.
Iemand die misschien het antwoord weet?

...


Verwijderd

Hij gebruikt volgens mij je hostnaam als mailname, volgens mij wordt er zoiets verstuurd als xxx@hostname

Dus ZONDER een extensie als .nl erachter. Hij probeert dan je hostname op te zoeken bij je dns server, die hem niet kent waarna sendmail onderuit gaat.

Ik heb verder geen ervaring met sendmail, doe ook alles met postfix maar dit lijkt mij het probleem.

kijk eens in /etc/mailname, daar moest ik mijn eigen mailserver adres als fqdn invullen.

PS Postfix doet zich voor als sendmail, in php hoef je als het goed is niks aan te passen.

[ Voor 11% gewijzigd door Verwijderd op 18-06-2004 17:35 ]


  • IceM
  • Registratie: Juni 2003
  • Laatst online: 19-02 18:20
Verwijderd schreef op 18 juni 2004 @ 17:35:
Hij gebruikt volgens mij je hostnaam als mailname, volgens mij wordt er zoiets verstuurd als xxx@hostname

Dus ZONDER een extensie als .nl erachter. Hij probeert dan je hostname op te zoeken bij je dns server, die hem niet kent waarna sendmail onderuit gaat.

Ik heb verder geen ervaring met sendmail, doe ook alles met postfix maar dit lijkt mij het probleem.

kijk eens in /etc/mailname, daar moest ik mijn eigen mailserver adres als fqdn invullen.

PS Postfix doet zich voor als sendmail, in php hoef je als het goed is niks aan te passen.
Die FQDN kon ik al meteen instellen bij de postfix installatie, en inderdaad, gewoon verwijzen naar sendmail in php.ini (dus niks veranderen) werkt gewoon :D
(en ja, de mail(); functie werkt nu ook.)

Mijn dank is groot

...


Verwijderd

Lang leve postfix _/-\o_

Om toch een kleine indicatie te geven van hoe mijn configuratie is (met meerdere domeinen, geen open relay enzo kun je in http://www.computerdokter-groenlo.nl/postfix mn config dir bekijken

Er wordt ook verwezen naar /etc/mailname, hier staat mail.computerdokter-groenlo.nl geven.

[ Voor 86% gewijzigd door Verwijderd op 18-06-2004 18:23 ]


  • IceM
  • Registratie: Juni 2003
  • Laatst online: 19-02 18:20
Verwijderd schreef op 18 juni 2004 @ 18:21:
Lang leve postfix _/-\o_

Om toch een kleine indicatie te geven van hoe mijn configuratie is (met meerdere domeinen, geen open relay enzo kun je in http://www.computerdokter-groenlo.nl/postfix mn config dir bekijken

Er wordt ook verwezen naar /etc/mailname, hier staat mail.computerdokter-groenlo.nl geven.
offtopic:
kom jij uit groenlo? ik uit meddo, en heb ook in groenlo gewoond.

...


Verwijderd

Ja ik kom uit Grolle

He een _buurt_genoot :D

  • igmar
  • Registratie: April 2000
  • Laatst online: 31-01 23:50

igmar

ISO20022

IceM schreef op 17 juni 2004 @ 21:37:
de syslog bedoel je? (sorry, ben toch nog wel beetje n00b in linux)
http://213.46.41.184/log1.txt
Dat zijn de laatste regels die erin staan. Wel wat over mail, maar ik word er niet wijzer van.
In het nederland : Je DNS setup is brak, en je gebruikt geen FQDN. Moraal van het verhaal : Fix je DNS.
Pagina: 1