29. november 2003 - 21:04Der er
14 kommentarer og 3 løsninger
Mærkelig mail() fejl
Hejsa!
Hmm, jeg får en mærkelig fejl når jeg bruger mail() på min server. Jeg kører php 4.3.2, apache 2 og RedHat linux 9. Når jeg prøver bare at lave en hel normal mail i form af:
mail($til, $emne, $body);
sker der ingenting. Den melder hverken om fejl eller andet.(Og jeg får selvf. ik nogen mail). På RedHats side står der, at det bare burde virke til at starte med, men ... nej - åbenbart ikke. Jeg kører ingen SMTP på min server, men det er noget med, at man ikke behøver at specificere det i ens php.ini. Mail-delen i min php.ini ser således ud:
[mail function] ; For Win32 only. SMTP = localhost
; For Win32 only. sendmail_from = me@localhost.com
; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). ;sendmail_path =
Jeg er lidt usikker på det her, da jeg ik har været i stand til at finde hjælp til problemet. Umiddelbart burde ";" være en kommentar - og hvorfor er windows-only linierne så ikke kommenteret, mens unix linien er? (Det her er standard php.ini - prøvede at ændre kommenteringerne - uden noget resultat).
Er der en kvik gut der ka give mig et lille praj ?
Najs job der sandbox, har fundet en log fil for mailsystemet - indimellem kan jeg finde et par småfejl (udfra 1 mia. liniers kode uden linieskift):
stat=Data format error
Real domain name required for sender address
Mens der andre steder står
stat=Sent
^ det er jo formentlig sådan det skal se ud .. hmmm, vil prøve at udfylde win32 felterne igen så ... ved I hvordan jeg specificerer kodeord/brugernavn til en SMTP server ?
du skal ikke specificere kodeord og bruger, bare skrive smtp serverens navn, eks bruger jeg TDC, så den hedder smtp.mail.dk
Synes godt om
Slettet bruger
29. november 2003 - 21:42#11
En anden gang, kan du bruge tail logfilnavn lige efter du har forsøgt at sende.
En SMTP-server bruger normalt ikke brugernavn og password. Du skal nok finde et sted, hvor du kan definere, hvilken afsenderadresse, der bliver sat på.
Kig evt. på PEAR's mail funktion.... Men der lidt mere avanceret, men kan bruge SMTP server med bruger og password, hvis du skal relaye på en anden server.
FUCK HVOR ER DET NAJS !!! DET VIRKER HERRE GODT TAAAAAAARK ...
Men jeg blev liiige nødt til at lave ret så mange ændringer (helt klart sandbox' log-anvisning der hjalp mig (hvorfor tænkte jeg dog ik på det?)). For dem der evt. har samme problem, gjorde jeg følgende (obs. jeg kører ssh forbindelse hjemmefra til serveren, så der kan være andre text-editorer der er smartere):
Allerførst skal du sikre dig, at dit domæne er registreret korrekt, kør følgende kommando:
nslookup ditdomæne.dk
Hvis den melder positiv kører du text-editoren vi på filen hosts i etc-mappen:
vi /etc/hosts
Sørg for at få fat i serverens ip bag routeren (eller hvis du har dyn-ip fik du den i nslookup). Slet derefter linien efter kommentaren, og erstat den med noget i stil med (Obs. servernavnet står i den linie du sletter):
dinip ditdomæne.dk ditservernavn
Tryk på esc og skriv vi-kommandoen:
:x
Kør dit php-script, og den fejl, beskrevet her, burde være løst ! :D
Hvis ztyxx og sandbox lige smider et svar, får i allesammen lidt point (sandbox mest dog :P)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.