Добрый день всем. Только остановил свой выбор на друпале и сразу наткнулся косяк
Хостер отключил sendmail и порекомендовал пользоваться рассылкой писем используя smtp аутентификацию. Установил модуль phpmailer и оказалось что он не работает. При включенном debugging выдает вот что: SMTP -> FROM SERVER: SMTP -> FROM SERVER: SMTP -> ERROR: HELO not accepted from server: SMTP -> FROM SERVER: SMTP -> ERROR: EHLO not accepted from server: SMTP -> ERROR: AUTH not accepted from server: SMTP -> FROM SERVER: SMTP -> ERROR: RSET failed:
Начал экспериментировать. Создал поддомен, закинул в него сам phpmailer и smtp-класс от него. в качестве index.php взял пример от phpmailer'a для утентификации на гуглмэйле. воопщем мучался долго выяснил что засада наступает в тот моемнт когда дело до ходит до helo (точнее ehlo) эта команда почему-то не проходит.
Еще хостер кагда рекомендовал stmp дал ссылку на пример: http://www.codewalkers.com/c/a/Email-Code/Smtp-Auth-Email-Script/
этот скрипт все-таки работает. хотя вроде все тоже самое что и в phpmailer'e. ну, за исключением того что mailer сделан с классами ...
могу выложить скрипт который все-таки работает...
з.ы. сайт типа сделал, а пользователи зарегистрироваться не могут
Комментарии
забыл добавить: написал об этом хостеру, он пару дней помолчал (не знаю делали что или нет) и выдал ответ: проблем на сервере с соединением к порту 25 через localhost нету, найти причину почему Ваш скрипт не соединяется с localhost не удалось, скорее всего требуется дополнительная настройка Вашего скрипта.
есть еще модуль SMTP, правда я не проверял его в деле
а как называется? и где найти не подскажете?
SMTP, так и называется. http://drupal.org/project/smtp
гы) так то и есть phpmailer)
точнее модуль на его основе
нашел в чем проблема, точнее это было и раньше ноя не обращал внимания: функции fget которые должны возвращать ответ smtp сервера (который потом обрабатывается на предмет ошибок) почему-то ничего не возвращают и висят до истечения таймаута.
написал хостеру - второй день молчит...
подожду немного, потом опять буду его терроризировать
может кто сталкивался с такой проблемой?
А другой смтп сервер попробовать? Что за хостер, кстати? Ибо обычно наоборот, не дают доступ к smtp что бы спам не слали, а заставляют через sendmail. Эффект тот-же, а головной боли меньше.
Предположу, что fgets не может дождаться конца ответа, либо не воспринимает, что ответ уже пришел весь.
fgets не то чтобы конца ответа не дожидалась а просто ничего не возвращала, похоже что она пыталась вернуть но не получалось.
другой smtp сервер тоже не получалось использовать, все было так же - тишина до таймаута и как следствие ничего не работает, т.к. все скрипты а-ля phpmailer разбирают ответ сервера на предмет прошла авторизация или нет по возвращаемым кодам.
вообщем хостер, наверно помучался, ничего не получилось
и перенес на другой сервер, там все работает нормально.
уж не знаю что было
Ага, у меня тоже самое... Думал, что не так что-то настроено - долго провозился. Проблема возникает и на Лидерхосте, и на Мс-Хосте... Попробую попросить админов, может, чем-то помогут...
Уважаемые гуры, а вообще, в чём проблема? Помогите, пжл, разобраться.
PS: XmasterX, а кто хостер у сайта?
--- !!! ВОПРОС РЕШЁН !!! --- (Надо было мануалы внимательно читать
В общем, так. Для PHP5 нужен PHPMailer версии 2.2.x. На сегодняшний день последняя версия - 2.2.1.
Скачать можно отсюда: http://sourceforge.net/project/showfiles.php?group_id=26031&package_id=2...
Файлы PHPMailer-а надо залить в каталог /sites/all/modules/smtp/phpmailer/
Затем крайне рекомендуется проапдейтить файл class.phpmailer.php патчем для v2.2.1, который лежит в корне дистрибутива модуля SMTP. Если Вам неохота возиться, то уже проадейченный файл v2.2.1 я прикрепил к этому сообщению.
И на Лидерхосте, и на Мс-Хосте сразу же всё заработало!
М-дааа... Не всё так просто оказалось... В какой-то момент (я пропустил, в какой именно), скорее всего, после обновления версии Drupal до 6.6, после отправки сообщения через форму контактов, система стала выпадать в белый экран. Причём, не смотря на это, письма прекрасно уходят и нормально доходят до адресата...
В журнале появляется запись:
На всякий случай, строка 319:
В интернете проблема известна и много раз обсуждалась, о ней пишут следующее:
Однако, есть одна очень интересная вещь: в панели настройки модуля SMTP есть возможность отсылки письма через SMTP для проверки работы модуля. Так вот, при отправке письма из панели настройки письмо нормально уходит, но система в белый экран НЕ ВЫПАДАЕТ!!!
Умные мысли отсутствуют... Уважаемые гуры! Подскажите что-нибудь, пожалуйста!
PS: Проблема проявилась на трёх сайтах на двух разных хостерах. Везде Друпал 6.6, PHPMailer пробовал и 2.2.1, и 2.3. Файл class.phpmailer.php пробовал и с апдейтом и без апдейта.
была проблема с белым экраном, когда в конце файла template.php я по привычке в конце написал закрыающий тэг "?>". Причем, ошибок - нигде и никаких не было. Причем, белочка появлялась строго при каких - либо сабмитах. Пол дня убил, чтоб найти в чем косяк. Мне так думается, что такие дела касаются и других файлов друпала, где-то я видел предупреждения о закрывающих тэгах. А в СМТП модуле используется сторонний класс phpmailer, в теле которого автор добросовестно прописал энтот тэг. Может быть причина в этом.
хм.. блин, я сейчас посмотрел сорсы этого класса, там в конце, ну фиг с ним с тэгом закрывающим, но там после него идет перенос... Во всех трех файлах.
Да уж... В 2.2.1 точно есть перенос. Правда, в 2.3 его, всё-таки, убрали.
На всякий случай убрал ещё из этих файлов и закрывающий тэг. Всё равно не помогает.
Братья-друпалеры! Помогите, пжл, чем сможете. На самом деле, надо. Думаю, не только мне.
PS: kosilko, спасибо за ответ!
У меня при отправке сообщения пишет - Error sending e-mail from from to to : !error_message
Что делать?
Решил проблему с белым экраном. Всего то и надо было, что установить модуль посвежее. Не знаю, может неактуально, но отписываюсь откуда его надо было качать:
http://sourceforge.net/projects/phpmailer/files/phpmailer%20for%20php5_6... - качаем 5-ю версию phpmailer,
распаковываем в /sites/all/modules/smtp/phpmailer
ничего не патчим.
У меня все заработало.
Здравствуйте.
Проблема с отправкой почты через smtp.gmail.com
Использую Drupal 6.14
Модуль SMTP Authentication Support -6.x-1.0-beta3
PHPMailer v5.1
В настройках модуля указываю:
SMTP server: smtp.gmail.com
SMTP backup server:
SMTP port: 465
Use encryption protocol: SSL
Username: xxxx@xxxxx //ящик зарегиcтрирован на Gmail
Password: *********
При отправке писем получаю ошибку:
SMTP -> ERROR: Failed to connect to server: Connection timed out (110)
Ошибка SMTP: не удается подключиться к серверу SMTP.
Кто сталкивался, подскажите пожалуйста в чем причина, как исправить?
Присоединяюсь! поставил 5 версию.
У меня тоже все заработало.
Такая же ошибка:
"Ошибка SMTP: не удается подключиться к серверу SMTP"
Drupal 6.15
PHP 5.2.6-1+lenny8
Модуль smtp 6.x-1.x-dev
PHPMailer 5.1
Хостинг - infobox.ru
SMTP сервер - smtp.bk.ru
Ничего не посоветуете?
Порты возможно хостер блокирует
Подобная ошибка: SMTP -> ERROR: Failed to connect to server: Connection timed out (110)
Ошибка SMTP: не удается подключиться к серверу SMTP.
Использую Drupal 6.22
Модуль smtp-6.x-1.x-dev (и SMTP Authentication Support -6.x-1.0-beta5 тоже пробовал)
PHPMailer v5.1
хостер TimeWeb, хорошо расписано как настроить почту. открыт 25 порт - проверял на встроенной в Ubuntu почте: настройки smtp и pop3 вбивал. все работает. И почту отправлял со своего компа от "имени домена" и слал обратно с mail.ru на почту домена.
Но при таких же настройках не хочет работать отправка через сайт. Сначала думал что намудрил с модулями разнообразными и мешают работать. Заново устанавливал Drupal и первым делом модуль smtp включал - так и не заработало! (даже на локальной машине не захотела).
Пробовал и другие версии smtp, пропатчивал. Там же пробовал и настройки ручками вбивать... ничего не помогло
Уже не знаю что делать!? Помогите, прошу.
P.S. сейчас пробовал Drupal 7 поставить... все идет нормально, на последнем пункте где надо указать почтовый ящик - вбиваю существующий на mail.ru ... дальше пишет "Unable to send e-mail. Contact the site administrator if the problem persists.Congratulations, you installed Drupal! Visit your new site." Это замечательно что установился, но почта заглохла.
P.S.v2 (спустя 20 минут) поставил на Drupal7 smtp-7.x-1.0-beta1 + PHPMailer v5.1 с теми же настройками что и в Drupal6.22 - РАБОТАЕТ! Что за глюк тогда в 6-той?!?!?