отправка email сообщений [PHP]
знаю он всем уже надоел
я не углублялся в вопрос отправки сообщений
насколько я знаю есть 3 способа отправки сообщений
первый
отправка с помощью функции mail()
второй
через сокет конектиться к почтовому серваку
третий
напримую соединятся с фыйлом sendmail.exe на сервере
и как параметры уму передовать все данные
Dolonet как-то выкладывал класс для отправки сообщений через сокет
он работает и в общем он меня устраивает
но я опять столкнулся с необходимостью отправлять сообщения не авторезируясь на сервере
насколько я понимаю это можно сделать с помощью функции mail()
я пробовал это делать раньше но у меня ничего не получилось и я благополучно забросил это дело
сейчас хочу всетаки разобратся
пишу следующий код
var_dump($result);
на экране печатает
тоесть все ок, но до адресата письмо не доходит
пробовал указывать более расширеную шапку
$to = "test@test.ru";
$subject = "My Subject";
$message = "Line 1\nLine 2\nLine 3";
$head =
"From: ".$from."\n"
. "To: ".$to."\n"
. "X-Mailer: Test.ru\n"
. "Reply-To: ".$from."\n"
. "Mime-Version: 1.0\n"
. "Subject: ".$subject."\r\n"
. "Content-type: text/plain; charset=windows-1251\r\n";
$result = mail($to, $subject, $message, $head);
var_dump($result);
результат тот же
у меня есть предположение что причина в настройках сервера
но я опять столкнулся с необходимостью отправлять сообщения не авторезируясь на сервере
То, что ты ни где не вводишь авторизационные данные совсе не значит, что авторизация про происходит. Просто в данном случае происходит соединение с локальным SMTP сервером который для localhost принимает соединение без вопросов (на сколько я помню в php.ini можно перенаправить такой запрос на внешний сервер).
Отсюда первое требование, на машине с которой ты оправляешь письмо должен стоят почтовый сервер.
Функция mail рапортует тебе true. И это правильно, ведь сама функция отработала корректно. Она отдала письмо в систему и все, дальнейшее её не волнует. Работает ли почтовый сервер, корректно ли он настроен.
Поэтому отсюда второе требование. Сервер не только должен быть установлен, но еще и корректно настроен для (хотя бы) оправки почты.
Третий вывод прост. Хочешь иметь гарантию оправки письма - используй сокет. Общаясь напрямую с сервером ты всегда можешь быть уверенным в результате и если не оправить письмо, это хотя бы знать о том, что письмо не уходит и (например сброс ситуации в лог) и уже предпринимать какие то действия.
подробная информация, логи и все такое
но вобщем ситуация такая
там где я рабортаю есть сложности с соединением через сокет
нет учетки. соединение происходит по ldap
неуверен в том что получется соеденится через сокет
раньше, до меня, народ отправлял письма с сайта с помощью функции mail
сейчас, как я уже говорил, ничего не получается
функция mail возвращает true но до адресата письмо не доходит
я так понимаю что проблема в настройке почтового сервера
подскажите хотябы в каком направлениии копать
пс сервер поднят на линуксе
но вобщем ситуация такая
там где я рабортаю есть сложности с соединением через сокет
нет учетки. соединение происходит по ldap
неуверен в том что получется соеденится через сокет
Каким образом сокетное соединение и LDAP связаны между собой?
я так понимаю что проблема в настройке почтового сервера
подскажите хотябы в каком направлениии копать
пс сервер поднят на линуксе
Правильно понимаешь. Копать в строну настройки почтовика (читать усиленно документацию по установленному почтовику). Еще более правильно будет привлечь специалиста, ибо самому можно разбираться долго, упорно и безрезультативно. Почта вообще служба старая со своими историческими заморочками. Не зря именно с ней чаще всего и возникают проблемы (если сравнивать с установкой веб сервера или СУБД).
Уверен?
Все же я не стал бы смешивать понятие технической возможности доставки почти и блокирование её.
домен помойму к этому отношения не имеет
покрайней мере когда речь идет о сокете
конектиться к серверу можно по домену, а можно по IP
честно говоря я несовсем понимаю что такое LDAP
потому извеняюсь если сказал не в тему
понятно
спаибо за информацию
попробую разобратся
Все же я не стал бы смешивать понятие технической возможности доставки почти и блокирование её.
Абсолютно уверен на 100%. В свое время убил несколько дней прежде чем выяснить почему тестовый сервер не отсылает письмо с подтверждением регистрации.
честно говоря я несовсем понимаю что такое LDAP
потому извеняюсь если сказал не в тему
Не в тему это еще слабо сказано... Я бы сказал п***ец как не в тему.
Просто на сколько я помню свякие спецификации наличие доменного имени совершенно не обязательно.
А вопрос не приема почты в случае отсутствия у исходящего MTA доменного имени все же, имхо, из другой оперы. Из оперы фильрации входящей почты и интиспамов.
знаю он всем уже надоел
это, безусловно проще - снова задать, чем прочесть RFC 2821. тогда вопросы отпадут сами собой
Боюсь дело не в незнании RFC :D
А вопрос не приема почты в случае отсутствия у исходящего MTA доменного имени все же, имхо, из другой оперы. Из оперы фильрации входящей почты и интиспамов.
А я собственно и не говорил про спецификации - я как раз и говорил про антиспам))
[COLOR="Silver"]ЗЫ Ты скоро станешь таким же злым как я - бедные посетители этого форума, им будет непросто[/COLOR]
[COLOR="Silver"]ЗЫ Ты скоро станешь таким же злым как я - бедные посетители этого форума, им будет непросто[/COLOR]
Я?! Оооо, нет))) ничуть. Я как был язвительным на таком язвительном уровне и останусь ) Лентяев и лодырей высмеивать и подкалывать, тем кто хоть к чему то стремиться подсказывать, но ни как не делать за них.