Настроил на своем серваке под FreeNAS магазин (русифицированный 1.5.1.3.1), поставил в настройках почты отправку через SMTP (не нашел нигде как заставить работать hph-шный mail() на фринасе).
Отправка сообщений о новом покупателе и о заказах на административный мейл работает без проблем, а вот попытка отправить месадж со страницы "Контакты" приводила к следующему результату:
Notice: Error: MAIL FROM not accepted from server! in /путь к магазу/system/library/mail.php on line 298Покопавшись в и-нете нарыл что проблема с mail.ru и другими mail-провайдерами, которые проверяют валидность указываемого в письме адреса отправителя сравнивая его с логином при подключении по SMTP. А здесь как раз это и нарушалось, т.е. регистрация шла от имени административного логина, а мейл пытался отправиться от имени (мейла), указанного на форме "Контакты".Решил проблему следующим образом:
- открыл файл \catalog\controller\information\contact.php
- нашел в нем строки (20-я и 21-я в 1.5.1.3.1):
$mail->setFrom($this->request->post['email']);
$mail->setSender($this->request->post['name']);
-заменил их на:
$mail->setFrom($this->config->get('config_email'));
$mail->setSender($this->request->post['email']);
Все, отправка почты со страницы "Контакты" заработала.
Одно неудобство - при отправке ответного письма тому, от кого пришло письмо, придется поредактировать поле "Кому" (т.к. там стоит не адрес реального отправителя, а административный адрес, т.е. если не отредактировать, то письмо придет себе же), но это мелочь по сравнению с работающей отправкой.
Надеюсь я помог кому-нибудь своим приобретенным опытом ;)