Рубрики
WEB-сервер

Установка MailHog на Ubuntu

MailHog — инструмент для тестирования email, включающий в себя фейковый SMTP. Все отправленные письма будут перехвачены MailHog и доступны в веб-интерфейсе.

Устанавливаем Go и MailHog

sudo apt-get -y install golang-go 
go get github.com/mailhog/MailHog 
go get github.com/mailhog/mhsendmail

Копируем в директорию bin, чтобы можно было запустить отовсюду.
{user} — ваше имя пользователя

sudo cp /home/{user}/gocode/bin/MailHog /usr/local/bin/mailhog
sudo cp /home/{user}/gocode/bin/mhsendmail /usr/local/bin/mhsendmail

Делаем MailHog сервисом
{user} — ваше имя пользователя

sudo tee /etc/systemd/system/mailhog.service <<EOL
[Unit]
Description=Mailhog
After=network.target
[Service]
User={user}
ExecStart=/usr/bin/env /usr/local/bin/mailhog > /dev/null 2>&1 &
[Install]
WantedBy=multi-user.target
EOL

systemctl daemon-reload
systemctl enable mailhog

Открываем порт 8025 в iptables

Чтобы мы могли попасть на веб-интерфейс MailHog

sudo iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8025 -j ACCEPT

Веб-интерфейс MailHog теперь будет доступен по адресу http://ip-сервера:8025

Настройки SMTP для MailHog

В вашем прриложении остаётся настроить SMTP, указав в качестве хоста localhost и порт 1025

Настраиваем PHP для работы с MailHog

В php.ini меняем sendmail_path на следующий

sendmail_path = /usr/local/bin/mhsendmail

Если в качестве веб-сервера используется Apache, то для каждого сайта в отдельности можно изменить sendmail_path в .htaccess, добавив строчку

php_value sendmail_path "/usr/local/bin/mhsendmail"

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *