The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Проблема с отправкой писем через ф-ию mail() в PHP"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы WEB технологии (Public)
Изначальное сообщение [Проследить за развитием треда]

"Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от Cx2 email(ok) on 23-Дек-07, 15:18 
У меня сервер на win2k3
там стоит Apache 2.2 с PHP 5
И SMTP служка из IIS

В php.ini всё прописано как надо!

Если я отправляю почту функцией mail() без дополнительных параметров шапки, то письмо отправляется нормально, в поле От адрес sendmail_from из php.ini

Если я добавляю в шапку From, то письмо не доходит до получателя, а отправляется на Return-Path, который равен sendmail_from из php.ini.

вот что приходит на Return-Path:

Reporting-MTA: dns;myserver
Received-From-MTA: dns;myserver
Arrival-Date: Sat, 22 Dec 2007 17:18:03 +0300

Final-Recipient: rfc822;тут емейл кому должно было отправиться сообщение
Action: failed
Status: 5.5.0
Diagnostic-Code: smtp;550 Message was not accepted -- it contains invalid headers.  More specially, 'From:' header must match user you are sending mail from.  See http://www.mail.ru/pages/help/261.html for details.


+

копия письма.


Вот такие пироги. Раньше всё работало вроде-как нормально.

Кстати если я ложу в папку Pickup письмо, то оно отправляется без проблем с любыми заголовками.

Помогите разбраться, я не понимаю даже в какую сторону копать.

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от angra (ok) on 24-Дек-07, 16:46 
>Помогите разбраться, я не понимаю даже в какую сторону копать.

Для начала прочитать сообщение об ошибке. Там английским по белому описана проблема, дальше не помешает сходить по указанной ссылке. Ну и наконец на досуге неплохо почитать "как правильно задавать вопросы", если вы конечно не рассчитываете на помощь телепатов.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от Cx2 email(ok) on 24-Дек-07, 23:23 
Конечно же я читал.
Но ещё раз повторяю, если положить письмо с любым заголовком в папку pickup то письмо отправляется.
А в ПХП нет.

Посоветуйте хоть куда обратиться.
В сапорте майл ру не дали вразумительного ответа.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от ССК on 25-Дек-07, 16:18 
>Конечно же я читал.
>Но ещё раз повторяю, если положить письмо с любым заголовком в папку
>pickup то письмо отправляется.
>А в ПХП нет.
>
>Посоветуйте хоть куда обратиться.
>В сапорте майл ру не дали вразумительного ответа.

1. Проблема в маил сервере, там акесс лит надо добавить.

Ответ про хеадер в replay от мэил.ру, это срабатывает антиспам.

www.ssc4u.net/rus/

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от Cx2 email(ok) on 25-Дек-07, 22:13 
>1. Проблема в маил сервере, там акесс лит надо добавить.
>

Облазил все закладки, не нашел подобной функции.
Подскажите где это нужно добавить.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от angra (ok) on 25-Дек-07, 22:35 
Похоже плохо читали. Не знаю что такое папка pickup, но могу предположить что это от какого-то mail клиента. Клиент этот кроме собственно отправки еще и другие шевеления производит между прочим. Например авторизуется на smtp сервере или, как например аутглюк, предварительно проверяет ящик через pop. Ваш php скрипт ничего из этого не делает, соответственно получает отлуп. Ну и сам php код или хедеры баунса вы не показали, так что только телепаты в силах догадаться, что именно вы пытаетесь послать.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от Cx2 email(ok) on 25-Дек-07, 22:52 
>Похоже плохо читали.

Может не понял в силу своей необразованности в этом вопросе :(
Но разобраться нужно!

>Не знаю что такое папка pickup, но могу предположить

Это стандартная папка, появляется при установке IIS со службой SMTP.
Если в неё положить текстовый файл с письмом, то он отправляется.
Например такое:


Date: 27 Nov 2008 0852 GMT
To: to@mail.ru
From: from@mail.ru
Subject: Спасибо за помощь
MIME-Version: 1.0
Content-Type: text/html; charset=”windows-1251”
Content-Transfer-Encoding: quoted-printable

test message


Полагаю это сделано для проверки работоспособности.

>что это от какого-то mail клиента. Клиент этот кроме собственно отправки
>еще и другие шевеления производит между прочим. Например авторизуется на smtp
>сервере или, как например аутглюк, предварительно проверяет ящик через pop.

Я пользуюсь функцией mail() в PHP и не знаю какой клиентский алгоритм заложен в неё.

>php скрипт ничего из этого не делает, соответственно получает отлуп. Ну
>и сам php код или хедеры баунса вы не показали, так
>что только телепаты в силах догадаться, что именно вы пытаетесь послать.

PHP скрипт тут не при чем, т.к. это проблема не конкретного скрипта, а веб-сервера в целом.
Вот 2 примера:

1)


mail('to@mail.ru', 'test', 'test message')

Письмо отправляется нормально.

2)


mail('to@mail.ru', 'test', 'test message', 'From: from111@mail.ru')

Письмо не отправляется. НО! Если параметр From сделать равным значению sendmail_from из php.ini то пиьмо отправляется так же как и в первом примере.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от angra (ok) on 25-Дек-07, 23:57 
Так стало уже понятней :)
В упрощенном варианте можно считать что smtp сервер mail.ru работает в двух режимах
1. прием почты от мира к свои пользователям
2. прием почты от своих пользователей к другим своим и в мир.

Не имею опыта с IIS, но могу предположить что он предоставляет smtp сервер для php. в таком случае при использовании mail() ваше письмо идет по первому варианту и в таком случае действительно у вас ничего не получится так как на mail.ru стоит проверка на соответствие From: и послыающего smtp(скорее всего на соответствие заголовка From:, тому что передается как smtp команда mail from). Алтернативой является посылка обращаясь напрямую к smtp mail.ru минуя iis. В php вроде как есть набор функций для работы с smtp, в таком случае вы  указываете  все smtp команды и хедеры сами минуя услуги smtp от iis.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от Cx2 email(ok) on 26-Дек-07, 10:50 
>Не имею опыта с IIS, но могу предположить что он предоставляет smtp
>сервер для php.

Так и есть

>в таком случае при использовании mail() ваше письмо
>идет по первому варианту и в таком случае действительно у вас
>ничего не получится так как на mail.ru стоит проверка на соответствие
>From: и послыающего smtp(скорее всего на соответствие заголовка From:, тому что
>передается как smtp команда mail from).

Раньше у меня всё работало нормально. Примерно 1,5 недели назад ЭТО началось.
Тем более что тестовые письма из папки pickup отправляются нормально при любых заголовках.

>Алтернативой является посылка обращаясь напрямую
>к smtp mail.ru минуя iis. В php вроде как есть набор
>функций для работы с smtp, в таком случае вы  указываете
> все smtp команды и хедеры сами минуя услуги smtp от
>iis.

Такой вариант не подходит, т.к. на сервере уже работает много сайтов с форумами, на которых многие получают уведомление и всевозможные формы обратной связи.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от Cx2 email(ok) on 28-Дек-07, 20:59 
Я заметил, что на яндекс нормально почта отправляется.
Следовательно это на мэйле настройки ужесточили.

Проблема ещё актуальна :(

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от gavro email(ok) on 29-Дек-07, 18:34 
>Я заметил, что на яндекс нормально почта отправляется.
>Следовательно это на мэйле настройки ужесточили.
>
>Проблема ещё актуальна :(

Во-первых, что-б не возится с во многом бездарными поделками мелкософта  - есть как минимум две бесплатные альтернативы sendmail под винду, одна из них, причем, опен-сорсовая. Можно элементарно в обход функции "мэйл" отправлять почту через эти соответствующие проги используя тот же самый exec.

Во-вторых, не стоит предполагать, что IIS реализует SMTP сервер под винду - не ленивые знают, как ведет себя функция mail под виндой - она использует айпишник SMTP-сервера, прописанный в PHP.INI (не ленивые настолько, что-бы хотя-бы удосужиться прочитать документацию на php.net на эту функцию , соответсвенно), то есть установлен на сервере IIS, или нет - функция коннектится к айпишнику и порту указанного в конфиге СМТП-сервера - а дальше передает все как полагается.

Не говоря уже о том, что даже если эту ошибку выдает не SMTP-сервер, и не функция MAIL - очевидно вы пытаетесь реализовать передачу сообщения средставми своего SMTP-сервера, указывая в поле FROM: "левый" е-мэйл адрес. Известно, что для защиты от спаммеров сейчас считается вполне нормальным на уровне SMTP-сервера, осуществляющего прием сообщения, делать обратный lookup на доменное имя, указанное в заголовке FROM после символа @, и если оно не совпадает с адресом SMTP-сервера - отбрасывать это письмо как спам.

И последнее - если вы в курсе всего этого дела - будьте любезны, предосавьте свое письмо в plain-text со всеми заголовками, что-бы была возможность говорить о неправильно сформированном internet message заголовке.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от Cx2 email(ok) on 29-Дек-07, 21:00 
Ничего по существу не написал.
Может вам стоит почитать ещё и документацию по настройке сервера на php.net?
Там ещё в комментах можно похвастаться своими знаниями ;)
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

12. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от gavro (ok) on 30-Дек-07, 17:40 
>Ничего по существу не написал.
>Может вам стоит почитать ещё и документацию по настройке сервера на php.net?
>
>Там ещё в комментах можно похвастаться своими знаниями ;)

извини пьяный был не совсем понял вопрос, поэтому написал что попало :-D

хотя суть все та же - возьми любой smtp-sniffer и посмотри чем письма в первом и втором случае отличаются, и запости сюда - интересно ведь. Увидишь чем отличаются - будем разговаривать.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

13. "Проблема с отправкой писем через ф-ию mail() в PHP"  
Сообщение от Cx2 email(ok) on 30-Дек-07, 18:06 
>хотя суть все та же - возьми любой smtp-sniffer и посмотри чем
>письма в первом и втором случае отличаются, и запости сюда -
>интересно ведь. Увидишь чем отличаются - будем разговаривать.

Они шапками отличаются.
Насколько я понял письма на майл.ру блокируются как спам из-за того что их сервер думает, что я отправляю письма с ящика на майл.ру, указанного в php.ini.
Я указал в php.ini ящик на другом домене, теперь майл.ру нормально принимает почту со всех сайтов.

Надеюсь, что проблема решилась :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру