(044) 538-1588
всі способи зв'язку
та вирішення проблем
сайт на украинскомUA сайт на русскомRU
 
 
  1gb - .net, ASP, Windows, Apache, PHP хостинг

Відправка поштових повідомлень

Вступ

Пам'ятайте: розсилка спама та інших повідомлень, які можуть бути прийняті за спам, заборонена. Для того, щоб захистити себе і інших користувачів хостингу від проблем і непорозумінь, ознайомтеся з наступними документами:

Загальні зауваження

Помилка, що часто припускається, є створення повідомлень з великою довжиною рядків. Такі повідомлення можуть доходити в спотвореному або обрізаючому вигляді.
Особливо часто це правило порушується при некоректному створенні HTML повідомлень - перенесення рядків там кодується символами
, таким чином, символи перенесення рядків в початковому тексті повідомлення можуть бути взагалі відсутніми.

Пам'ятайте, що за MIME і RFC стандартами, які використовуються для передачі поштового повідомлення, довжина рядка повідомлення не може перевищувати 80 символів (орієнтовно). Вам необхідно вставляти перенесення рядків штучно, якщо ваше повідомлення містить довгі рядки.

Це відноситься до кодування повідомлення 8bit, коли тіло повідомлення передається без кодування.
В тому випадку, якщо тіло повідомлення кодується (наприклад base64), довжина підсумкових рядків може бути будь-якою, але довжина рядка, що використовується для передачі повідомлення (тобто що містить дані в base64) знову ж таки не може перевищувати 80 символів.

Зверніть увагу! Заголовок From повинен містити адресу, що існує у Вашему особистому кабінеті.

PHP

Ви можете скористатися стандартною функцією mail(). Будьте обережні і грамотні при конструюванні українських/російських листів!

Листи робота 1Gb.ua відправляються, наприклад, такою функцією:
function _mail ($from, $to, $subj, $what)
{
mail($to, $subj, $what, 
"From: $from
Reply-To: $from
Content-Type: text/plain; charset=windows-1251
Content-Transfer-Encoding: 8bit"
);
}
Зверніть увагу на переклади рядків в рядковій константі - вони повинні бути присутніми.
Якщо ви хочете відправляти HTML листи, ви повинні дописати в константу заголовків замість рядка Content-type наступний, наприклад, рядок:
Content-Type: text/html; charset=windows-1251

PERL

Для відправки пошти ви можете скористатися модулем Net::SMTP.

Приклад скрипта має приблизно такий вигляд:
use Net::SMTP;    
$smtp = Net::SMTP->new('robots.1gb.ua'); 
$smtp->mail('from@me.ru');
$smtp->to('to@him.ru');
$smtp->data();
$smtp->datasend("From: <support\@1gb.ua>\n");
$smtp->datasend("To: <to\@him.ru>\n");
$smtp->datasend("Reply-To: <from\@me.ru>\n");
$smtp->datasend("Content-Type: text/plain; charset=windows-1251\n");
$smtp->datasend("Content-Transfer-Encoding: 8bit\n");
$smtp->datasend("\n");
$smtp->datasend("A simple test message!\n");
$smtp->dataend();
Радимо прочитати про це більш детальніше в описі PERL-А.

ASP

Важливо: Із-за численних технічних проблем, непорозумінь і складнощів в роботі ми не рекомендуємо і не підтримуємо використання відправки повідомлень за допомогою CDONTS.

Варіант 1.
Рекомендуємо користуватися компонентом Persits.MailSender (AspEmail), який встановлений на всіх наших серверах. Для відправки використовуйте SMTP сервер robots.1gb.ua.
Приклад використання на нашому сервері:
<%
set mm = Server.CreateObject("Persits.MailSender")
	mm.Host = "robots.1gb.ua"
	mm.From = "support@1gb.ua"
	mm.FromName = "1Gb support"
	mm.AddAddress "xxxx@1gb.ua"
	mm.AddCustomHeader "Content-Type: text/plain; charset=windows-1251"
	mm.AddCustomHeader "Content-Transfer-Encoding: 8bit"
	mm.Subject = "Тестове повідомлення"
	mm.IsHTML = 0

	mm.Body = "Тестове повідомлення"
	mm.Send
%>
Документацію по цьому компоненту можна прочитати здесь.

Вариант 2.
Для совместимости мы также предоставляем поддержку SMTPRus 2.1, которая также установлена на наших серверах.
Не рекомендуем вам пользоваться этим объектом, т.к. он сильно устарел и не обеспечивает надежной работы. Было замечено, что часто вместо отправки письма происходит ошибка (500 ошибка сервера IIS), вызванная несовместимостью объекта с современными программными средами.
Авторскую инструкция к SMTPRus можно прочитать здесь.

ASP .NET

Для відправки використовуйте SMTP сервер robots.1gb.ua. Ви можете використовувати стандартну функціональність об'єкту System.Web.Mail:
System.Web.Mail.MailMessage m = new System.Web.Mail.MailMessage();
m.From = from;
m.To = to;
m.Subject = subject;
m.Body = what;
m.BodyFormat = System.Web.Mail.MailFormat.Text;
m.BodyEncoding = System.Text.Encoding.GetEncoding("windows-1251");

System.Web.Mail.SmtpMail.SmtpServer = "robots.1gb.ua";
System.Web.Mail.SmtpMail.Send (m);
Важливо: При явній помилці в адресі або будь-яких інших помилках генерується виключення з коментарем 'SendMessage() failed: Could not access 'CDO.Message' object.', яке не слід сприймати як загальну системну помилку. Це всього лише помилка при відправці конкретного повідомлення.

Parser 3.x

SMTP сервер вже настроєний, для відправки повідомлень досить написати наступне:
^mail:send[
   $.charset[koi8-r]
   $.from[Поддержка <support@1gb.ua>]
   $.to[Адресат <to@him.ru>]
   $.subject[Тестовое сообщение]
   $.text[Текст тестового сообщения]
]
Докладніше про технологію Parser на нашому хостингу можна почитати тут.

 


Дополнительная информация по теме:

Где искать информацию

  • База знаний хостинга 1Gb.ua
    Здесь вы можете найти ответы на часто задаваемые вопросы программирования, совместимости, использования хостинга.
  • 1Gb-Wiki - библиотека различных полезных документов по хостингу
    Наши сотрудники и клиенты составили исчерпывающее описание всех нюансов хостинга и связанного с ним веб-программирования.

Самые популярные темы для программистов

Другие документы

 

Ми завжди готові відповісти на Ваші запитання!
 
Будь-які питання та підтримка - support@1gb.ua
інші способи зв'язку

 

Зверніть увагу

debug.1gb.ua
Не працює сайт?
Автоматичний аналіз проблем сайта

 

 

   
 
Вгору     
Підтримка: support@1gb.ua
інші способи зв'язку
© 2005-2017 ТОВ 1ГБ