Zum Inhalt springen

Typo3 Mail-Versand mit Mercury unter WinXP

Erstellt am 1. Februar 2007 · 1 Antwort · letzte Antwort am 1. Februar 2007

Tags: E-Mail-Versand, TYPO3 4, Frage

reelwolf ·

Tach auch,

mittlerweile glaube ich echt, dass ich zu doof bin für's Internet. Ich habe XAMPP bei mir laufen und mit T3 auch eine Seite gemacht die soweit gut funzt. Nun will ich mit der eingebauten Formmail ein Kontaktformular machen. Formular Aufbau ist ja noch ganz OK, aber dabei bin ich auf echte Probleme mit dem Mail-Versand gestoßen. Daher HILFE!

Folgendes Setup:
ApacheFriends XAMPP (basic package) version 1.5.5

+ Apache 2.2.3
+ MySQL 5.0.27
+ PHP 5.2.0 + PHP 4.4.4 + PEAR
+ PHP-Switch win32 1.0 (please use the "php-switch.bat")
+ XAMPP Control Version 2.3 from www.nat32.com
+ XAMPP Security 1.0
+ SQLite 2.8.15
+ OpenSSL 0.9.8d
+ phpMyAdmin 2.9.1.1
+ ADOdb 4.93
+ Mercury Mail Transport System v4.01b
+ FileZilla FTP Server 0.9.20
+ Webalizer 2.01-10
+ Zend Optimizer 3.0.2
+ eAccelerator 0.9.5 RC1 for PHP 5.1.6 (comment out in php.ini)

Dazu:
+ Typo3 4.0.2
+ fake sendmail for bugzilla/windows version 16

MercuryMail ist konfiguriert und arbeitet korrekt (zumindest mit meinem Mail-Client).

Wenn ich nun eine Mail mit T3 versenden will erhalte ich folgende Mitteilung:

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in E:\HOSTING-DATA\site3\t3lib\class.t3lib_htmlmail.php on line 712

Warning: Cannot modify header information - headers already sent by (output started at E:\HOSTING-DATA\site3\t3lib\class.t3lib_htmlmail.php:712) in E:\HOSTING-DATA\site3\typo3\sysext\cms\tslib\class.tslib_fe.php on line 2830

Versuche ich mit dem Installtool eine Testmail zu schicken erhalte ich:

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in E:\HOSTING-DATA\site3\t3lib\class.t3lib_div.php on line 4131
0 MAIL WAS SENT TO: ***@***.homeip.net

Meine php.ini:

[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25

; For Win32 only.
;sendmail_from = ***@***.homeip.net

; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = "D:\Anwendungen\Internet\Webserver\xampp\sendmail\sendmail.exe -t"

; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =

Meine sendmail.ini:

; configuration for fake sendmail

[sendmail]
; you must change mail.mydomain.com to your smtp server
smtp_server=localhost

; the default domain for this server will be read from the registry
; this will be appended to email addresses when one isn't provided
; if you want to override the value in the registry, uncomment and modify
;default_domain=local

; log smtp errors to error.log (defaults to same directory as sendmail.exe)
; uncomment to enable logging
error_logfile=error.log

; create debug log as debug.log (defaults to same directory as sendmail.exe)
; uncomment to enable debugging
debug_logfile=debug.log

; if your smtp server requires authentication, modify the following two lines
;auth_username=
;auth_password=

; if your smtp server uses pop3 before smtp authentication, modify the 
; following three lines
;pop3_server=
;pop3_username=
;pop3_password=

; to force the sender to always be the following email address, uncomment and
; populate with a valid email address.  this will only affect the "MAIL FROM"
; command, it won't modify the "From: " header of the message content
;force_sender=***@***.homeip.net

; sendmail will use your hostname and your default_domain in the ehlo/helo
; smtp greeting.  you can manually set the ehlo/helo name if required
;hostname=localhost

Mercury wird auf dem selben Server betrieben wie mein T3-Indianer. Ich habe aber auch schon versucht bei smtp_server statt localhost meine subdomain.domain.tdl Angabe zu machen. Hat aber auch nix gebracht. Ich habe auch schon versucht den sendmail_path auszukommentieren. Resultat war das selbe. Die Logs von sendmail sind leer. Also weder debug.log noch error.log enthalten Daten.

Habe ich was vergessen? Übersehe ich ein fehlendes Semikolon (oder eins zu viel)???

Bitte helft.

Besten Dank,
Wolf

PS: Kleiner Nachtrag -

Im Installtool steht: Sendmail path not defined!
sendmail_path=
This may be critical to TYPO3's use of the mail() function. Please be sure that the mail() function in your php-installation works!

Dabei bin ich mir sicher in der php.ini einen sendmail_path angegeben zu haben.
Kann es sein, dass ich die ganze Zeit an der falschen php.ini arbeite? Die, welche ich bearbeite liegt vom Apache aus gesehen in ..\php\ wo eigentlich auch meine php-Installation ist.

reelwolf ·

Tach auch,

ja, ich bin zu blöd... oder ich kenne XAMPP noch nicht gut genug. Wer hätte denn erwartet, dasse es insgesamt vier php.ini Dateien in einer Installation gibt ? #angry# Witziger Weise greift Apache halt nicht auf die im ../php/-Ordner zu, wie ich es erwartet hatte, sondern auf den im /Apache/bin/-Ordner, was im wahrsten Sinne des Wortes "naheliegend" ist.

To make a long story short: ich habe die ganze Zeit die falsche php.ini editiert. Kein Wunder das nix klappte.

Beste Grüße und ich hoffe Ihr macht nicht die selben Fehler,
Wolf