Я использую WordPress на Ubuntu VPS. Когда WordPress пытается отправить электронное письмо, такое как сброс пароля или регистрационное письмо, оно никогда не доставляется. WordPress использует php mail()
функция.
Я полагаю, это не работает, поскольку на моем VPS не установлен sendmail. Итак, я вошел в SSH и установил его с помощью sudo apt-get install sendmail
который оказался успешным. Следуя другим советам в Google, я отредактировал файл php.ini, чтобы указать путь для sendmail.
Я обнаружил это как /usr/sbin/sendmail
что я считаю типичным для многих серверов * nix. Чтобы проверить, я зашел в этот каталог на FTP. Каталог "sendmail" выглядит как ярлык. Это правильно / ожидается?
В любом случае почтовая функция php не работает. Я создал файл phpinfo и тестовый почтовый файл php, который содержит только mail()
работать с моим адресом электронной почты в качестве получателя.
Примечание: у моего VPS еще нет домена, только IP-адрес. Повлияет ли это на функциональность sendmail? Мой phpinfo здесь для вашей справки: http://95.142.166.209/phpinfo.php
Мне тоже нужен постфикс? Я не думаю, что у меня это есть ...
Вот некоторые из почтовых журналов. Под конец я выполнил почтовую функцию:
Nov 27 18:41:02 sergeserver sm-msp-queue[5450]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 19:00:01 sergeserver sm-msp-queue[5497]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 19:01:01 sergeserver sm-msp-queue[5497]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 19:20:01 sergeserver sm-msp-queue[5532]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 19:21:01 sergeserver sm-msp-queue[5532]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 19:40:01 sergeserver sm-msp-queue[5568]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 19:41:01 sergeserver sm-msp-queue[5568]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 20:00:01 sergeserver sm-msp-queue[5605]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 20:01:01 sergeserver sm-msp-queue[5605]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 20:20:01 sergeserver sm-msp-queue[5641]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 20:21:01 sergeserver sm-msp-queue[5641]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 20:40:01 sergeserver sm-msp-queue[5675]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 20:41:01 sergeserver sm-msp-queue[5675]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 21:00:01 sergeserver sm-msp-queue[5712]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 21:01:01 sergeserver sm-msp-queue[5712]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 21:20:02 sergeserver sm-msp-queue[5747]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 21:21:02 sergeserver sm-msp-queue[5747]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 21:40:01 sergeserver sm-msp-queue[5782]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 21:41:01 sergeserver sm-msp-queue[5782]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 22:00:01 sergeserver sm-msp-queue[5831]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 22:01:01 sergeserver sm-msp-queue[5831]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 22:20:01 sergeserver sm-msp-queue[5866]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 22:21:01 sergeserver sm-msp-queue[5866]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 22:37:19 sergeserver sendmail[5903]: My unqualified host name (sergeserver) unknown; sleeping for retry
Nov 27 22:38:19 sergeserver sendmail[5903]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 22:38:19 sergeserver sendmail[5903]: qARLcJYI005903: from=adminftp, size=158, class=0, nrcpts=0, msgid=<201211272138.qARLcJYI005903@sergeserver>, relay=adminftp@localhost
Вам нужен либо postfix, либо sendmail. Они служат для одной и той же цели, и вы не можете установить оба. Предполагая, что вы продолжаете работать с sendmail, решите, как будет выглядеть почта с этого компьютера, например user@domain.name
. Обратите внимание, что вы получаете две ошибки от sendmail:
Первая ошибка My unqualified host name (sergeserver) unknown
, поэтому убедитесь, что запись о sergeserver существует в /etc/hosts
.
Вторая ошибка, которую вы получаете, это unable to qualify my own domain name (sergeserver)
. Это означает, что машина, помимо "простого" имени хоста (в вашем случае sergeserver), должна иметь полное имя, которое делает ее уникальной в DNS система. Так что будет полезно, если в вашем /etc/hosts
:
95.142.166.209 sergeserver sergeserver.domain.name
Поскольку вы, похоже, работаете в системе Debian или Ubuntu, sudo sendmailconfig
перезапустит sendmail за вас. Попробуйте и посмотрите, что произойдет. Если он все еще не работает, отредактируйте /etc/mail/sendmail.mc
и добавьте следующие строки внизу:
LOCAL_CONFIG
Dmsergeserver
Djsergeserver.domain.name
sudo sendmailconfig
и посмотрим, что произойдет.