Главная » Сервер под Windows » PHP mail под Windows. Отправка почты из PHP скриптов
PHP mail под Windows. Отправка почты из PHP скриптов Сервер под Windows |
В этой статье я хочу рассказать об отправке почты из php скриптов под Windows. С точки зрения php программиста отправка почты выполняется с помощью стандартной функции mail(). И вот тут у многих начинающих разработчиков возникает проблема. Скрипт, прекрасно работающий на сервере хостера, выдает ошибки на локальном компьютере. Обычно эти ошибки имеют примерно такое описание: Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in E:\www\simplemail\mailer.php on line ...... Дело в том, что функция mail сама по себе почту не отправляет, она просто вызывает программу sendmail, которая в дистрибутив web сервера и php интерпретатора не входит (и не должна). Sendmail, в свою очередь, для отправки почты использует SMTP сервер. Таким образом, чтобы php скрипт мог отправлять почту нужно установить и настроить sendmail и SMTP сервер. Версию sendmail для Windows можно скачать здесь Установка и настройка выполняется в три этапа. 1) Распаковываем архив на тот же диск, где установлен php. Например, я создал папку C:\wamp\sendmail. 2) Вносим изменения в файл php.ini: [mail function] SMTP = sendmail_from = sendmail_path = "C:\wamp\sendmail\sendmail.exe -t" Как видите, нужно только указать путь к sendmail чтобы php мог ее найти. 3) Настраиваем sendmail. Все настройки находятся в файле sendmail.ini (расположен в папке с sendmail). Но перед тем как приступать к настройке пару слов об SMTP сервере. Вам совсем не обязательно устанавливать сервер на вашем компьютере. Многие почтовые сервисы предоставляют бесплатный доступ к своим серверам. Ниже я покажу пример настройки sendmail для работы с SMTP сервером mail.ru, но, естественно, вы выбрать любой другой. Итак, открываем sendmail.ini и устанавливаем следующие параметры: smtp_server=smtp.mail.ru ; адрес SMTP сервера smtp_port=25 ; порт SMTP сервера default_domain=mail.ru ; домен по-умолчанию error_logfile=error.log ; файл в который будет записываться лог ошибок debug_logfile=debug.log ; очень полезная на этапе отладки опция. Протоколируются все операции, которые выполняет sendmail auth_username=account_name@mail.ru ; имя вашего аккаунта auth_password=account_password ; ваш пароль ; следующие три опции используются если перед авторизацией на SMTP сервере требуется авторизация на POP3 сервере pop3_server=pop.mail.ru pop3_username=account_name@mail.ru pop3_password=account_password ; параметр для команды MAIL FROM force_sender=account_name@mail.ru hostname=mail.ru Теперь не забудьте перезапустить web сервер, чтобы изменения вступили в силу. Автар: Владимир Статсенко
Уважаемый посетитель, на сайте не все можно скачать, мы не распространяем нулленые версии коммерческих скриптов. Скачать можно только то что помеченнно знаком FREE или демо версии.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем. Для того, чтобы пользоваться всеми функциями сайта, включая поиск! |
Автор:
kuper |
Просмотров:
3311 | Коментарии (0) |Распечатать
|
Design By Kuper
|