Показать сообщение отдельно
  #1 (permalink)  
Старый 14.03.2014, 16:58
Новичок на форуме
Отправить личное сообщение для malltaf Посмотреть профиль Найти все сообщения от malltaf
 
Регистрация: 15.01.2014
Сообщений: 8

Headers при отправке блокируется
Доброго всем дня.
Есть postfix, есть сайт на openSUSE, на нем форма запроса (читай: обратная связь), которая должна отправлять письмецо посредством mail() на определенную почту. Проблема в следующем: при попытке отправки письма с заголовками, письмо уходит, но его блокирует шлюз (уходит точно, проверял). Если headers'ы отсутствуют, то письмо приходит куда надо, но, соответственно, без заголовков.
Вопрос: почему заголовки могут не пропускаться?

Также есть мысль, что почта уходит не через нужный почтовый сервер (192.168.15.1, к примеру), а через что попало.
Или, например, на сайте/сервере прописаны неверные логин/пароль почты или неверный адрес почтового севера, через который нужно работать, поэтому и отсылается почта не оттуда, откуда нужно. Админ мог поменять пароль от почты, к примеру. Раньше все работало, поэтому и возникла мысль о проблеме с логопассом/сервером.
Где эти данные могут быть прописаны для сайта и postfix'а? В main.cf (postfix) не нашел, в коде сайта тоже никакой информации по этому поводу нет. На сервере все настроено нормально, почта ходит.

Вот, если что, код заголовков ($to,$subject,$text, $from заполняются предварительно в другой функции и на этот момент уже являются статичными):
function MailTo($to,$subject,$text, $from) {
   $msg = $text; 
   $headers   = "From:".convert_cyr_string($from,'w','k')."\r\n";
   $headers    .= "Reply-To: ".convert_cyr_string($from,'w','k')." \r\n";
   $headers    .= "X-Priority: 3 (Normal)\r\n";
   $headers    .= "X-Mailer: SXMM V 1.0beta\r\n";
   $headers    .= "Organization: ".substr(md5(time()),0,7)."\r\n";
   $headers    .= "Return-path: ".convert_cyr_string($from,'w','k')." \r\n";
   $subject="=?koi8-r?B?".base64_encode(convert_cyr_string($subject,'w','k'))."?=";
   $headers    .= "Subject: ".$subject."\r\n";
   $headers    .= "Date: ".date("D, d M Y H:i:s O")."\r\n";
   $headers    .= "X-Spam:  Not detected\r\n";
   $headers    .='Content-Type:  text/plain; charset="koi8-r" \n\n'; 
if (@mail($to, $subject, $msg, $headers)){
return true;
} else {
   return false;}
}


Спасибо.
Ответить с цитированием