Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Perl + sendmail

Ответить
Настройки темы
Perl + sendmail

редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


Есть такой код:
Код: Выделить весь код
open (MAIL,"| $SEND_MAIL -t");
print MAIL "To: $to\n";
print MAIL "From: $fromaddr\n";
print MAIL "Reply-to: $replyaddr\n" if $replyaddr;
print MAIL "X-Mailer: Perl Powered Socket Mailer\n";
print MAIL "Content-Type: text/plain; charset=Windows-1251\n";
print MAIL "Subject: $subject\n\n";
print MAIL "$message";
print MAIL "\n";
Всё бы прекрасно, вот только не шлёт оно письма на mail.ru (угадайте с трёх раз откуда я этот кусок взял ). Вопрос: это некорректный код или неправильно настроен sendmail?

-------
http://ivank.ru


Отправлено: 01:47, 08-08-2004

 

Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Молча не шлет? И только на мыло.ру?

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 02:52, 08-08-2004 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


Молча (в смысле на stdin/stderr ничего не говорит). Может в логи что-то и пишет, но они мне не доступны.

Добавлено:

На сколько мне известно не шлёт только на mail.ru (bk.ru, inbox.ru это тот же мэйл.ру)

-------
http://ivank.ru


Отправлено: 05:27, 08-08-2004 | #3


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Вроде все нормально (насколько подсказывают мне мои скуlные познания Perl), больше бы информации :\.

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 00:57, 09-08-2004 | #4


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


ivank
я предложу тредтий вариант - мейл ру просто бъет эти письма, я сталкивался с подобной пробленной когда мне от хостера не доходили письма...

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 20:04, 09-08-2004 | #5


Аватара для archy

Ветеран


Сообщения: 659
Благодарности: 3

Профиль | Отправить PM | Цитировать


Попробуй написать так:
Код: Выделить весь код
open (MAIL,"| $SEND_MAIL -t") || die "sendmail sux";
и посмотри, что будет дальше

Отправлено: 22:31, 09-08-2004 | #6

mar mar вне форума

Аватара для mar

just mar


Moderator


Сообщения: 3904
Благодарности: 163

Профиль | Отправить PM | Цитировать


ivank
Цитата:
Может в логи что-то и пишет, но они мне не доступны
Вот те на! а я думала, что это выделенный сервер и все логи админу доступны
Упс! - забавно:
Код: Выделить весь код
 
-bash-2.05b$ telnet forum.oszone.net smtp 
Trying 66.79.174.172... 
Connected to forum.oszone.net. 
Escape character is '^]'. 
220 master.phpdevs.com ESMTP 
quit 
221 master.phpdevs.com 
Connection closed by foreign host.

ошибок в коде вроде бы нет. (кажется - по тому куску, что виден)
Вариант раз - нервная реакция на кодировку (в свое время предлагалось все не в koi посылать подальше)
Вариант два - пробовать все-таки получить логи (хотя предложение *archy, несмотря на его заманчивость, может и не пройти: я думаю, что sendmail ставит письма в очередь, а чудеса начинаются потом)
Вариант три: пргнать код с какого-нибудь независимого сервера, где логи можно поглядеть на какой-нибудь адрес mail.ru
Кто больше?

Отправлено: 23:37, 09-08-2004 | #7


редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


Цитата:
Попробуй написать так:

Код: open (MAIL,"| $SEND_MAIL -t" || die "sendmail sux";
sendmail есть и запускается, так что не прокатит.

Собственно говоря, перл тут совсем не причём. Поскольку если я говорю то же самое sendmail'у через ssh сам, то эффект наблюдается прежний.

Цитата:
Вариант раз - нервная реакция на кодировку (в свое время предлагалось все не в koi посылать подальше)
Нет, если указывать кои или не указывать ничего, то ничего не меняется.

Цитата:
Вот те на! а я думала, что это выделенный сервер и все логи админу доступны
Сервер выделенный, да. Только я не сисадмин. Мне только логи апача легко достать, за остальным надо обращаться к самому главному. Что видимо и придётся делать.

[s]Исправлено: ivank, 0:25 10-08-2004[/s]

-------
http://ivank.ru


Отправлено: 00:20, 10-08-2004 | #8

mar mar вне форума

Аватара для mar

just mar


Moderator


Сообщения: 3904
Благодарности: 163

Профиль | Отправить PM | Цитировать


ivank Лови! если у тебя нет дополнительных данных для скрипта-отправителя, то вот ответы mail.ru:
Код: Выделить весь код
#!/usr/local/bin/perl -w 
$SEND_MAIL = "/usr/sbin/sendmail"; 
$to = "mnesin\@mail.ru"; 
$fromaddr = "mar\@mail.bio.pu.ru"; 
$subject = "test"; 
$message = "test_mess"; 
## дальше - твое 
open (MAIL,"| $SEND_MAIL -t"); 
print MAIL "To: $to\n"; 
print MAIL "From: $fromaddr\n"; 
#print MAIL "Reply-to: $replyaddr\n" if $replyaddr; 
print MAIL "X-Mailer: Perl Powered Socket Mailer\n"; 
print MAIL "Content-Type: text/plain; charset=Windows-1251\n"; 
print MAIL "Subject: $subject\n\n"; 
print MAIL "$message"; 
print MAIL "\n";
Пока все правильно?
Получаем:
Код: Выделить весь код
cat /var/log/maillog 
Aug 10 17:52:22 bastion sendmail[19052]: RAA19050: to=mnesin@mail.ru, ctladdr=mar (1010/0), 
 delay=00:00:11, xdelay=00:00:11, mailer=esmtp, relay=mxs.mail.ru. [194.67.23.20], stat=User unknown 
Aug 10 17:52:22 bastion sendmail[19052]: RAA19050: RAA19052: DSN: User unknown 
Aug 10 17:52:22 bastion sendmail[19052]: RAA19052: to=mar, delay=00:00:00, xdelay=00:00:00, 
 mailer=local, stat=Sent 
Aug 10 17:59:01 bastion sendmail[19077]: RAA19077: from=mar, size=153, class=0, pri=30153, nrcpts=1, 
 msgid=<200408101759.RAA19077@localhost>, relay=mar@localhost
И имеем письмо мне:
Код: Выделить весь код
The original message was received at Tue, 10 Aug 2004 17:52:11 GMT 
from mar@localhost 
 
 * ----- The following addresses had permanent fatal errors ----- 
mnesin@mail.ru 
 
 * ----- Transcript of session follows ----- 
... while talking to mxs.mail.ru.: 
>>> RCPT To:<mnesin@mail.ru> 
<<< 550-Verification failed for <mar@localhost> Unrouteable address 
<<< 550 non-local sender verification failed 
550 mnesin@mail.ru... User unknown
[s]Исправлено: mar, 18:05 10-08-2004[/s]

Отправлено: 18:00, 10-08-2004 | #9


редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


Спасибо. Хотя я всё равно, видимо, банально через SMTP сервер слать буду (т.к. через него всё ходит). Т.к. почему сия ошибка возникает: ни малейшего представления не имею.

-------
http://ivank.ru


Отправлено: 20:05, 14-08-2004 | #10



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Perl + sendmail

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
FreeBSD 5.3 Perl не видит локали, а KDE при сборке не видит perl :o mar Общий по FreeBSD 8 06-05-2005 13:13
sendmail Twilight Общий по FreeBSD 28 24-12-2004 09:39
Sendmail - Настройка Dzenik Общий по Linux 16 12-09-2003 06:27
sendmail avk Общий по FreeBSD 7 10-08-2003 20:45
sendmail Psih Общий по Linux 6 01-04-2003 05:02




 
Переход