Я намагаюся вже цілих два дні, і я просто не можу зробити найпростішу справу.
Проблема: Надсилання електронної пошти з PHP на мою адресу електронної пошти не працює
Я раніше працював з Windows і Sendmail (Sendmail був у пакеті XAMPP) і все було нормально. У пакеті XAMPP (1.7.7) для Linux не вбудований Sendmail. Отож, трохи погуглившись, я з’ясував, що Postfix краще вписується в середовище LAMPP.
Що я спробував поки що:
Я встановив Postfix і хотів налаштувати його так, щоб просто використовувати smtp-сервер мого приватного постачальника електронної пошти (як це було в Windows). Так я confogured мій php.ini , як це:
[mail function]
; For Win32 only.
;SMTP = localhost
;smtp_port = 25
; For Win32 only.
;sendmail_from = me@example.com
sendmail_path = /etc/postfix
mail.add_x_header = On
Зауважте, що я прокоментував продукт "Тільки Win32". /Etc/postfix/main.cf виглядає наступним чином :
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
/ тощо / псевдоніми не змінюються:
# Required aliases
postmaster: root
MAILER-DAEMON: postmaster
# Common aliases
abuse: postmaster
spam: postmaster
/ etc / postfix / sasl_password :
my.providers.smtp my_login:my_password
/ тощо / postfic / sender_canonical:
postmaster my.email@ddress.com
Що сталося:
Тож коли я це роблю
> sudo /etc/init.d/postfix start
все, здається, працює нормально, і /var/log/mail.log каже: "postbux / master ubuntu [9720]: запускається демон - версія 2.8.5, конфігурація / тощо / postfix"
Але коли я запускаю свій PHP-скрипт (який відмінно працював з Windows і Sendmail), він просто проходить і нічого не відбувається, навіть не зафіксована помилка.
Чого я насправді хочу досягти:
Я працюю локально на веб-сайті електронної комерції. Він працює добре на спеціальному веб-сервері, але я хочу також, щоб він міг працювати локально з очевидних причин. У деяких випадках він надсилає електронні листи, і я просто хочу мати можливість отримувати їх за допомогою Thunderbird або будь-яким іншим способом. Чи тут використовується Postfix overkill? Мені не потрібно отримувати електронні листи - я просто хочу зробити надіслані листи якось видимими. Я, здається, не міг знайти жодних корисних покрокових посібників для цього питання (ні стосовно Senmail, ні Postfix - але, якщо чесно, я дуже новачок у Linux).
sendmail_path = "/usr/sbin/sendmail -t -i"