Ich habe es jetzt seit 2 Tagen versucht und ich kann einfach nicht das Einfachste zum Arbeiten bringen.
Das Problem: Das Senden von E-Mails von PHP an meine E-Mail-Adresse funktioniert nicht
Ich habe zuvor mit Windows und Sendmail gearbeitet (Sendmail war im XAMPP-Paket enthalten) und alles war in Ordnung. Im XAMPP-Paket (1.7.7) für Linux ist Sendmail jedoch nicht integriert. Nachdem ich ein wenig gegoogelt hatte, fand ich heraus, dass Postfix besser in eine LAMPP-Umgebung passt.
Was ich bisher versucht habe:
Ich habe Postfix installiert und wollte es so konfigurieren, dass es nur den SMTP-Server meines privaten E-Mail-Anbieters verwendet (wie unter Windows). Also habe ich meine php.ini so konfiguriert :
[mail function]
; For Win32 only.
;SMTP = localhost
;smtp_port = 25
; For Win32 only.
;sendmail_from = [email protected]
sendmail_path = /etc/postfix
mail.add_x_header = On
Beachten Sie, dass ich das "Nur Win32" -Stuff auskommentiert habe. Die Datei /etc/postfix/main.cf sieht folgendermaßen aus:
smtp_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password
myhostname = ubuntu
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
sender_canonical_maps = hash:/etc/postfix/sender_canonical
mydestination = ubuntu, localhost.localdomain, localhost
relayhost = mail.gmx.net
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = loopback-only
/ etc / aliases ist unverändert:
# Required aliases
postmaster: root
MAILER-DAEMON: postmaster
# Common aliases
abuse: postmaster
spam: postmaster
/ etc / postfix / sasl_password :
my.providers.smtp my_login:my_password
/ etc / postfic / sender_canonical:
postmaster [email protected]
Was geschieht:
Also wenn ich es tue
> sudo /etc/init.d/postfix start
Alles scheint gut zu funktionieren und im /var/log/mail.log heißt es: "ubuntu postfix / master [9720]: Daemon gestartet - Version 2.8.5, Konfiguration / etc / postfix"
Aber wenn ich mein PHP-Skript ausführe (das mit Windows und Sendmail gut funktioniert hat), läuft es einfach durch und es passiert nichts, es wird nicht einmal ein Fehler protokolliert.
Was ich eigentlich erreichen möchte:
Ich arbeite lokal an einer E-Commerce-Website. Es läuft gut auf dem dedizierten Webserver, aber ich möchte, dass es aus offensichtlichen Gründen auch lokal ausgeführt wird. In einigen Fällen werden E-Mails gesendet, und ich möchte sie nur mit Thunderbird oder auf andere Weise empfangen können. Ist die Verwendung von Postfix Overkill hier? Ich muss keine E-Mails empfangen - ich möchte nur die gesendeten E-Mails irgendwie sichtbar machen. Ich konnte anscheinend keine hilfreichen Schritt-für-Schritt-Anleitungen für dieses Problem finden (weder in Bezug auf Senmail noch in Bezug auf Postfix - aber um ehrlich zu sein, ich bin sehr neu in Linux).
sendmail_path = "/usr/sbin/sendmail -t -i"
Um E-Mails von localhost (WAMP, XAMP oder LAMP) zu senden, können Sie das PHPMailer-Paket verwenden
Dies ist die gleiche Anweisung wie in der Readme-Datei.
WAMP (Fenster):
Zuerst müssen Sie die "php.ini" bearbeiten. Um diese Datei zu finden, zeigen Sie die phpinfo mit dem folgenden Code vom WAMP-Server an. Erstellen Sie eine PHP-Datei [settings.php] in C: / wamp / www / und fügen Sie der Datei den folgenden Inhalt hinzu.
Geben Sie localhost / setting.php im Browser. Dort suchen Sie nach "Loaded Configuration File" . Dies ist der Pfad zu Ihrer php.ini .
In der php.ini - Datei entfernen; (Semikolon) gegeben `extension = php_openssl.dll. Jetzt ist die Servereinstellung vorbei ...
LAMPE (Linux):
Im Falle von Linux ist es nicht erforderlich, die Datei php.ini zu bearbeiten, wie ich im ersten Punkt unter WAMP erläutert habe.
Eine weitere Änderung ist, dass der Projekt- oder Dokumentstammordner anders ist.
quelle
Um E-Mails (mit sendmail-Paket) über Google Mail von localhost zu senden, überprüfen Sie bitte PHP + Ubuntu. Senden Sie E-Mails mit dem Google Mail-Formular localhost. Eine andere Antwort ist möglich.
quelle