Невозможно отправить почту через php mail () - PullRequest
6 голосов
/ 19 января 2011

Я не могу отправить электронное письмо через почтовую функцию php.

Это ошибка, которую я получаю.Предупреждение: mail () [function.mail]: не удалось подключиться к почтовому серверу через порт «localhost» 25, проверить настройки «SMTP» и «smtp_port» в php.ini или использовать ini_set () в D: \ inetpub \ vhosts \southernbatteries.com \ httpdocs \ includes \ utils.php в строке 6 Array ([0] => [1] => Не удалось отправить почту, попробуйте позже ...)

Что именно это означает?Означает ли это, что на моем веб-сервере не установлен почтовый сервер?Можно ли использовать другой почтовый сервер.Например, почтовый сервер Gmails для отправки почты?

Ответы [ 5 ]

4 голосов
/ 19 января 2011

Если вы хотите использовать встроенный mail(), вам нужно будет поговорить с администратором сервера.Можно использовать внешний SMTP-сервер в Windows, но это нужно указать в настройках php.ini, а встроенные функции PHP не поддерживают аутентификацию SMTP.

Обычный способ - либоиспользуйте локальный почтовый сервер, который в свою очередь может общаться с «настоящим» SMTP-сервером с аутентификацией, или используйте почтовый пакет, такой как SwiftMailer , который может подключаться к стороннему SMTP-серверу, такому как GMailнепосредственно.

0 голосов
/ 19 января 2011

Если вы хотите запустить свой собственный почтовый сервер (например, если это среда разработки), вы можете использовать mercury .

0 голосов
/ 19 января 2011

вам следует избегать использования php mail () - функция, поскольку ist подключается и отключается от почтового сервера для каждой отправленной почты.

вместо этого попробуйте использовать что-то вроде phpMailer , которое позволяет легко конфигурировать и отправлять много писем без проблем с производительностью.

0 голосов
/ 19 января 2011

Вы должны запустить свой собственный почтовый сервер на вашем сервере. Скорее всего, он не запущен или не установлен.

Как я вижу, вы запускаете его на Windows, скорее всего, позже. Вы можете попробовать использовать почтовый сервер вашего провайдера. Или гуглит. Но для этого вам, скорее всего, понадобятся имя пользователя и пароль.

0 голосов
/ 19 января 2011

Вам нужен почтовый сервер для отправки почты.Если у вас есть только apache, вы не сможете, если вы не отредактируете файл php.ini и не установите для smpt_server значение, позволяющее вам это сделать.Обратите внимание, что это будет работать только в зависимости от вашего провайдера.

Если у вас есть учетная запись хостинга, вы можете загружать файлы, и в Интернете они будут работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...