Od kiedy badałem ten problem i natknąłem się na ten post, a php innej firmy nie był dla mnie opcją.
Jak wiemy, PHP używa komendy sendmail
serwera domyślnie Opcja w php.ini
sendmail_path
może zostać zmieniony, aby zastąpić ustawienia do własnego polecenia z jego własnych argumentów itp na przykład: sendmail_path = /usr/bin/unix2dos | /usr/bin/dos2unix | /usr/sbin/sendmail -t -i
SSMTP pozwoli ci skierować wychodzące wiadomości e-mail do serwera poczty z twojego serwera www/php. https://wiki.archlinux.org/index.php/SSMTP
apt-get install ssmtp
Następnie można użyć sendmail_path = /usr/sbin/ssmtp -t
powiedzieć php używać ssmtp zamiast sendmail. Pamiętaj, aby ponownie uruchomić serwer WWW po dokonaniu zmiany w php.ini
także zapewnić skonfigurowaniu ssmtp i zatwierdzone swój SPF, DKIM rekordy DMARC przed dokonaniem zmian w sendmail_path
w php.ini
Na przykład serwer poczty Gmail. /etc/ssmtp/ssmtp.conf
# The user that gets all the mails (UID < 1000, usually the admin)
[email protected]
# The mail server (where the mail is sent to), both port 465 or 587 should be acceptable
# See also http://mail.google.com/support/bin/answer.py?answer=78799
mailhub=smtp.gmail.com:587
# The address where the mail appears to come from for user authentication.
rewriteDomain=yourdomain.com
# The full hostname
hostname=FQDN.yourdomain.com
# Use SSL/TLS before starting negotiation
UseTLS=Yes
UseSTARTTLS=Yes
# Username/Password
[email protected]
AuthPass=postmaster-password
# Email 'From header's can override the default domain?
FromLineOverride=yes
na pytanie wymiany stosu samo zobaczyć https://unix.stackexchange.com/questions/36982/can-i-set-up-system-mail-to-use-an-external-smtp-server
Aby rozwinąć na ten temat.
W przypadku korzystania z Google każdy adres e-mailowy From:
musi zostać skonfigurowany na koncie wysyłającym jako ustawienie "Konto własne" na kontach. W przeciwnym razie google przerobi nagłówki na x-google-original-from
i zamiast tego wskaże Od jako konto wysyłające.
Rekwizyty dla osób, które nie próbują bezpośrednio wysyłać poczty z Twojego serwera WWW. Chociaż możesz przekonfigurować swój sendmail.cf do korzystania z zewnętrznego serwera pocztowego, łatwiej będzie użyć pakietu PHP, o którym mowa w odpowiedziach. Używam Swiftmailer z zewnętrznym SMTP (SendGrid, usługa chmurowa Rackspace), która jak dotąd wydaje się działać całkiem dobrze. – ldg
Po skonfigurowaniu Swiftmailera za pomocą Rackspace Email, przełączanie do SendGrid przez Rackspace nastąpi później, gdy zwiększy się liczba wiadomości e-mail. Dzięki! – Matt