Подтвердить что ты не робот

Настройка машины Ubuntu/Apache/PHP для отправки электронной почты

Я работаю в небольшой компании Хо Ши Мина, единственным сервером которой был только один старый маленький компьютер. Сейчас всего несколько месяцев спустя мы быстро расширяемся, и одним из требований для новых пользователей является требование проверить их адреса электронной почты.

В поле Ubuntu нет специальных программ, вместо этого единственное, что я сделал на самом сервере, - это переформатировать весь жесткий диск из Windows XP и установить Natty Narwhal, а затем установить Apache и PHPMYADMIN.

Я хотел бы, чтобы PHP отправлял электронное письмо как пользователю, так и администраторам, как только кто-то подал заявку на членство. Но я не знаю, что мне нужно сделать, чтобы начать.

Любые идеи о том, что мне нужно настроить, были бы смиренно оценены; Я не ищу шаг за шагом, просто несколько советов, чтобы указать мне в правильном направлении.

-Duong Van

4b9b3361

Ответ 1

sudo apt-get install sendmail установит копию sendmail, которая будет прослушиваться локально. Если вы установите это, то php может использовать встроенную функцию mail(). Там также не будет риска стать дистанционным реле, если вы так же установите.

Если вы планируете отправлять почту в другие интернет-домены, вам нужно убедиться, что IP-адрес отправителя электронной почты также имеет обратную запись DNS (запись PTR). Большинство крупных интернет-провайдеров отклонит вашу почту, если ваш IP-адрес не имеет записи PTR или тот, который указывает на общий хост (например, 1.2.3.3.domain.isp.com). Он должен переходить на нечто вроде mail.yourdomain.com

Ответ 2

Встроенная функция почты является хорошей встроенной опцией.

Почтовая функция является частью ядра PHP, но для нее необходимо установить sendmail на сервер.

Я считаю, что sendmail уже может быть установлен с уже выбранными вами пакетами, но вы можете проверить его с помощью команды:

dpkg --get-selections | grep sendmail

Если это пустое, вы можете установить sendmail с помощью:

sudo apt-get install sendmail

Ответ 3

sudo apt-get install sendmail
sudo sendmailconfig

Мне понадобилась вторая команда для правильной работы. (он спрашивает о некоторой конфигурации, просто введите Y каждый раз, когда он спрашивает)

Ответ 4

Я рекомендую установить Postfix MTA для отправки электронной почты с сервера Ubuntu:

aptitude install postfix

И используя класс PHP Mailer для отправки электронной почты с PHP: http://phpmailer.worxware.com/


Для "полнофункциональных" почтовых сервисов мой рецепт:

Postfix + DKIM-proxy + Dovecot + Roundcube + PHP Mailer + SpamAssassin + правильные настройки DNS + SSL-сертификат для включения зашифрованных соединений

(И я предпочитаю NginX как HTTP-сервер...)

Ответ 5

sendmail делает трюк. Вы можете настроить sendmail для использования вашей обычной электронной почты smtp, подробности здесь: http://developernote.com/2012/07/how-i-configured-sendmail-for-php-on-ubuntu-server-12-04/ и специально для gmail здесь: http://linuxconfig.org/configuring-gmail-as-sendmail-email-relay В конфигурационных файлах sendmail есть ошибка, которую вы можете прочитать здесь: http://linux.koolsolutions.com/2010/10/14/tip-fixing-sendmail-configuration-error/