Php поща под прозорците (настройка Sendmail на прозорци), Posnov Андрю (Bitrix, IOS програмист)

От гледна точка на PHP програмист изпращане на електронна поща се извършва с помощта на функцията за стандартна поща (). И това е мястото, където се среща много разработчици начинаещите проблем. Сценарият работи добре на хоста-сървър, произвежда грешка на локалния компютър.

Тези грешки обикновено имат за такова описание:
Внимание: поща () [function.mail]: не успя да се свърже с MailServer в "Localhost" порт 25, потвърди "SMTP" и "SMTP_PORT" настройка в php.ini или използвайте ini_set () в E: \ WWW \ SimpleMail \ mailer.php он-лайн.

Фактът, че функцията на самата поща не изпраща електронна поща. той просто нарича Sendmail програма. който разпространение на уеб сървъра и PHP интерпретатор не е включен (и не трябва).

Sendmail, от своя страна, използва SMTP сървър за изпращане на поща.

Така че скрипт PHP да изпращате поща, за да инсталирате и конфигурирате Sendmail и SMTP сървър.

Sendmail версия за Windows може да бъде изтеглена от тук.

Инсталация и конфигурация се извършва на три етапа.

1) Разархивирайте файла на същото устройство, където сте инсталирали PHP. Например, аз ще създаде папката C: \ на машината, \ Sendmail.

2) Извършването на промени във вашия файл php.ini:

[Mail функция]
SMTP =
sendmail_from =
sendmail_path = "C: \ на машината, \ Sendmail \ sendmail.exe -t"

Както можете да видите, трябва само укажете пътя до Sendmail да PHP може да я намери.

3) Конфигуриране на Sendmail. Всички настройки са в sendmail.ini файл (намира се в папката с Sendmail).

Но преди да се опитате да се създаде няколко думи за сървър SMTP. Не е необходимо да инсталирате на сървъра на вашия компютър. Много имейл услуги предоставят безплатен достъп до техните сървъри.

По-долу съм покаже пример за конфигурация Sendmail да работи със сървъра Mail.ru на SMTP, но, разбира се, да изберете друг.

Така че, отворен sendmail.ini и задайте следните параметри:

default_domain = mail.ru; Домейнът по подразбиране

error_logfile = error.log; файла в който пишем дневник грешка

debug_logfile = debug.log; много полезен на етапа на отстраняване на грешки опция. Дневници всички операции, които Sendmail

Сега, не забравяйте да рестартирате уеб сървъра. промените да влязат в сила.