Я пытался целых два дня, и я просто не могу заставить самую простую вещь работать.
Проблема: отправка писем из PHP на мой адрес электронной почты не работает
Я работал с Windows и Sendmail (Sendmail был в пакете XAMPP) раньше, и все было в порядке. XAMPP-пакет (1.7.7) для Linux не имеет встроенного Sendmail. Поэтому, немного погуглив, я обнаружил, что Postfix лучше вписывается в LAMPP-среду.
Что я уже пробовал:
Я установил Postfix и хотел настроить его так, чтобы он использовал smtp-сервер моего частного провайдера электронной почты (как это было в Windows). Итак, я записал свой 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
/ etc / aliases не изменяется:
# 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 говорит: «Ubuntu postfix / master [9720]: демон запущен - версия 2.8.5, конфигурация / etc / postfix»
Но когда я запускаю свой PHP-скрипт (который отлично работал с Windows и Sendmail), он просто запускается и ничего не происходит, даже не регистрируется ошибка.
Чего я на самом деле хочу достичь:
Я работаю локально на сайте электронной коммерции. Он отлично работает на выделенном веб-сервере, но я также хочу, чтобы он работал локально по понятным причинам. В некоторых случаях он отправляет электронные письма, и я просто хочу иметь возможность получать их с помощью Thunderbird или любым другим способом. Используете ли здесь Postfix overkill? Мне не нужно получать электронные письма - я просто хочу, чтобы отправленные письма были как-то видны. Похоже, я не смог найти полезных пошаговых руководств по этой проблеме (ни в отношении Senmail, ни в Postfix - но, если честно, я очень новичок в Linux).
sendmail_path = "/usr/sbin/sendmail -t -i"