📦 synology.forum архів спільноти · 2005–2022
ai.synology.forum →

Mail();

WWWW.ZEOS.IN05.10.2009#1

Как сделать, чтобы заработала функция mail("Мой емейл", "Тема письма", "Текст письма");

Ведь на хостингах работает, а на Synology нет :(

 

Заранее спасибо за ответы :rolleyes:

VVladimir07.10.2009#2

Чтобы работала функция mail() нужно прописать правильный DNS сервер в настройках сети.

Иначе будет выдаваться ошибка: "Warning: mail() [function.mail]: Failed to send mail. (Failed to resolve host address.) in"

WWWW.ZEOS.IN07.10.2009#3

У меня дома вот такая связка:

http://i.piccy.info/i4/32/e0/c70cd6b83ffc4a9a92d92c44312a.png

 

Вот то, что я вижу в настройках сети DS209+II

http://i.piccy.info/i4/5f/e8/4059aad3a3f9c2cdf6bed96aa368.png

 

Вот то, что дал мне из данных мой провайдер:

IP Address: 212.22.197.94

Subnet Mask: 255.255.255.0

ISP Gateway Address: 212.22.197.254

Primary DNS Address: 193.24.25.1

Secondary DNS Address: 193.24.25.250

 

А вот код скрипта который я сделал для проверки этой функции:

<?php
//// Кому отсылаем
$email = "[email protected]";

//// Тема письма
$subject = "Проверка";

//// Текст сообщения
$message = "Проба отослать сообщение";

//// Заголовки
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=koi-8r\r\n";
//$headers .= "From: [email protected]\r\n";

//// Приоритеты важности письма
$headers .= "X-MSMail-Priority: High\r\n";
$headers .= "X-Priority: 1\r\n";
$headers .= "Priority: Urgent\r\n";
$headers .= "Importance: High\r\n";

//// Название программы с которой было отправлено сообщение
$headers .= "X-Mailer: ZEOS\r\n";

//// Отправка c проверкой
if (mail($email, $subject, $message, $headers)) {
    echo "Ура, сообщение отослалось успешно :)";
} else {
    echo "Ошибка, сообщение не доставлено :(";
}
?>

 

Подскажите пожалуйста, что я делаю не так? :(

У меня постоянно результат скрипта:

Warning: mail() [function.mail]: Failed to send mail. (Failed to resolve host address.) in /volume1/web/mail.php on line 26

Ошибка, сообщение не доставлено :(

 

Заранее спасибо. С уважением, Сергей! :rolleyes:

Ssterlopus07.10.2009#4

простите, а это он про какую строку в коде говорит: "/volume1/web/mail.php on line 26"

которая 26-я?

WWWW.ZEOS.IN07.10.2009#5

Естественно там, где функция mail();

if (mail($email, $subject, $message, $headers)) {
:(
WWWW.ZEOS.IN07.10.2009#6

Также в меню "Сеть" моего Synology в подсказках, есть такая информация:

Примечание: Чтобы убедиться в том, что уведомления электронной почты доставляются корректно через SMTP-сервер, необходимо ввести действующий IP-адрес DNS-сервера.

Может для того, чтобы заработала функция Mail(); надо установить: Mail Station ? :(

VVladimir07.10.2009#7

В php.ini по умолчанию стоит smtp порт 25, а многие провайдеры его блокируют. Попробуйте его поменять скажем на 2525...

Еще включите на всякий случай функцию "уведомления" по e-mail в NAS (notification).

Должно все заработать.

WWWW.ZEOS.IN07.10.2009#8

Vladimir, а нужно устанавливать Mail Station? Или можно как-то без него обойтись?

 

Очень прошу объяснить, что именно тут надо вводить в полях:

http://i.piccy.info/i4/05/cd/d92e4f768c250044ec492d187374.png

Что за SMTP сервер надо прописать? Моего провайдера или почты которой я пользуюсь? (у меня, например, google)

Также не понятен блок: "Требуется аутентификация" ? Зачем мне вводить тут логин и пароль от моей почты, чтобы потом самому себе отсылать уведомления :blink:

 

В поля первичный и вторичный емейл надо ввести свой емейл :)

WWWW.ZEOS.IN07.10.2009#9

Удалено

Ssterlopus07.10.2009#10
Vladimir, а нужно устанавливать Mail Station? Или можно как-то без него обойтись?

 

Очень прошу объяснить, что именно тут надо вводить в полях:

http://i.piccy.info/i4/05/cd/d92e4f768c250044ec492d187374.png

Что за SMTP сервер надо прописать? Моего провайдера или почты которой я пользуюсь? (у меня, например, google)

Также не понятен блок: "Требуется аутентификация" ? Зачем мне вводить тут логин и пароль от моей почты, чтобы потом самому себе отсылать уведомления :blink:

 

В поля первичный и вторичный емейл надо ввести свой емейл :)

 

smtp.gmail.com

25

требуется ssl

требуется аутентификация

имя пользователя (то, что до @gmail.com)

пароль

 

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

WWWW.ZEOS.IN08.10.2009#11

Ура супер! Всё вышло и работает точно как надо :)

 

Vladimir, Вы сказали включить на всякий случай функцию уведомления. Но оказывается без неё никак не будет работать функцйия mail();

Странно, что разработчики ни слова не написали про функцию mail(); в документации и приходится вот так вот на форумах решать проблемы :(

 

Всем большое спасибо :P :rolleyes:

Не знайшли рішення в цьому треді? ШІ знає цей архів і всі даташити — і відповість вашою мовою.Запитати ШІ →