Denwer + Sendmail

Ответить


Этот вопрос предназначен для предотвращения автоматической отправки форм спам-ботами.
Смайлики
:| :) :wink: :D :lol: :( :cry: 8) :o :oops: :? :x :P :evil: :twisted: :roll: :!: :?: :idea: :arrow: :mrgreen:
Ещё смайлики…

Markdown is OFF

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[url] ВКЛЮЧЁН
Смайлики ВКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: Denwer + Sendmail

Denwer + Sendmail

UncleFather » 10 мар 2011 18:27, Чт

Проблема:

Необходимо сменить слушаемый Denwer-ом SMTP порт с 25-го на 24-й.

Объяснение:

Т.к. Денвер предназначен прежде всего для отладки, использование «реального» sendmail в нем вряд ли оправдано. Именно по этой причине базовый пакет содержит «отладочную заглушку» для sendmail, которая складывает письма, приходящие от скриптов на Perl и PHP, в файл /tmp/!sendmail.txt. В большинстве случаев этого должно быть достаточно, однако, если вам все же потребуется настоящий сервер, можно порекомендовать, например, вот этот: http://courierms.narod.ru. См. также собрание ссылок на иные варианты.

Или, если у Вас уже есть настроенный почтовый сервер, то просто прописываем его параметры в php.ini, см..

При ближайшем рассмотрении видно, что, собственно, сам исполняемый файл "sendmail.exe" даже не запускается. Вместо него работает "sendmail_daemon_start.exe". Так же - как ни старайся, настройки из файла "php.ini" абсолютно не влияют на процесс sendmail.

Решение:

  1. Открываем файл "\denwer\tools\sendmail\common.pm"

  2. Находим строку

    Код: Выделить всё

    my $port = 25;
  3. Меняем номер порта на тот, который нам нужен

    Код: Выделить всё

    my $port = 24;
  4. Сохраняем изменения и закрываем файл

  5. Перезапускаем Denwer

  6. Тестируем работу заглушки:

    Код: Выделить всё

    telnet localhost 24

    в ответ мы должны получить сообщение от sendmail:

    Код: Выделить всё

    220 Denwer mail daemon emulator
  7. Выходим командой

Примечание: Заглушка sendmail по-умолчанию слушает только локальный компьютер (localhost)


Вернуться к началу