Русский

Не доходят письма, отправленные с сайта

1. Убедитесь что указан действительно существующий e-mail адрес отправителя и получателя (e-mail адрес магазина задаётся в панели администрирования "Настройки / Основная конфигурация" в поле "e-mail адрес магазина").

2. В панели администрирования "Настройки / Основная конфигурация" проверьте, что включены опции "Отправлять на e-mail адрес магазина письмо с информацией о каждом заказе" и "Отправлять покупателю письмо с информацией о заказе".
Кроме этого обязательно включите ("Да") опцию "При отправке писем на адрес магазина подставлять вместо e-mail пользователя e-mail магазина".
На некоторых хостингах может потребоваться добавить e-mail адрес магазина в список доверенных адресов в панели управления хостинга.

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

4. Возможно, IP адрес сервера отправителя заблокирован сервером получателем письма (например, за массовые рассылки или по другой причине).
Определите IP адрес почтового сервера вашего сайта.
Проверьте IP адрес почтового сервера в СПАМ базах.

5. Причиной того, что письма не доходят или попадают в СПАМ, также может быть отсутствие SPF записи для домена.
Если нет SPF записи для домена, желательно создать текстовую SPF запись через панель управления DNS-зонами вашего домена.
SPF запись должна выглядеть примерно так:
v=spf1 ip4:127.0.0.1 a mx ~all
где вместо 127.0.0.1 IP адрес вашего сайта.

Пример проверки текстовых записей для домена из командной строки:
C:\Windows\system32>nslookup -type=txt example.com
где вместо example.com ваше доменное имя.
Если SPF запись для домена существует, после выполнения команды nslookup вы увидите примерно такой результат

Не заслуживающий доверия ответ:
example.com      text =

        "v=spf1 ip4:127.0.0.1 a mx ~all"

SPF запись для почты yandex.ru
SPF запись для почты mail.ru
SPF запись для почты gmail.com


Для удобного тестирования работы встроенной функции mail можно использовать скрипт mail-test.php. Попробуйте отправить несколько писем с помощью него на разные адреса.
Если письма не доходят только на некоторые сервера - смотрите предыдущий пункт. Нужно решать этот вопрос с технической поддержкой хостинга и администрацией сервера получателя.
Если письма не доходят на все адреса на разных серверах, обратитесь в службу поддержки хостинга (скажите, что не доходят письма, отправленные PHP функцией mail).
Не забудьте удалить с сайта скрипт mail-test.php после тестирования!

По умолчанию для отправки писем используется встроенная в PHP функция "mail". В качестве альтернативы для отправки писем можно использовать SMTP сервер ("Настройки / Настройки SMTP").
Для отправки писем через SMTP, в настройках SMTP необходимо использовать учётную запись того почтового ящика, который задан в качестве e-mail адреса магазина в панели администрирования "Настройки / Основная конфигурация". Обязательно необходимо включить опцию "При отправке писем на адрес магазина подставлять вместо e-mail пользователя e-mail магазина" в "Настройки / Основная конфигурация".
Если при отправке с использованием SMTP письма не отправляются и в форме обратной связи появляется ошибка "Не удалось отправить сообщение!", вероятно, неправильно заданы настройки SMTP. Чтобы включить вывод отладочной информации при отправке почты и посмотреть какая ошибка, в файле index.php временно измените строчку
define('DEBUG_MODE', 0);
на
define('DEBUG_MODE', 1);


Если сайт размещён на Windows хостинге

Если сайт размещён на Windows хостинге, то для возможности отправки писем необходимо включить опцию "Не использовать имена получателя и отправителя в заголовках писем" (раздел панели администрирования "Настройки / Основная конфигурация") или включить и настроить использование SMTP.


Вернуться к списку разделов

Смотрите также: Помощь администратору ArwShop Market.