Требования к хостеру.

Пожалуйста, будьте внимательны!

Для лучшего понимания важных вещей требования к хостеру изложены максимально простым бытовым языком, а потому многословно и с картинками. Просьба читать ту многословность со старанием, так как от правильного понимания этой странички зависит, сможет ли Почтовая Нана работать на Вашем хосте.

Основные требования к хостеру:

    1) Версия PHP и необходимые расширения.

    На хосте должен быть PHP в диапазоне версий 5.2.x.-5.4.x
    Все необходимые расширения (с галочками) указаны на рисунке ниже.

    Этот список расширений даже слегка избыточен.
    Однако такая "избыточность" нужна для других скриптов автора.

    Версия PHP и необходимые расширения.

    Информация к размышлению:

    Выпадающий список версий PHP раскрыт для иллюстрации простой мысли: хостер не вправе диктовать, какая именно версия у Вас будет. Ибо будет именно та, которая Вам нужна, и никак иначе. Тот хостер, которого этого не понимает, лишается клиентов естественным путём.

    Сразу лирическое отступление о версиях PHP.

    Движок, написанный в рамках концепции функционального программирования, совершенно одинаково работает на любой версии языка, так как все базовые функции языка от версии не зависят. Поэтому никакого выигрыша от более свежей версии PHP Вы не получите. Наоборот, так как разработчики PHP напихали туда много ненужного нам функционала, хостер будет тратить больше оперативки и ресурсов без всякого толка.

    Стоит стремиться к использованию наиболее старой версии PHP из числа поддерживаемых. В данном случае это версия 5.2

    2) Поддержка Зенда.

    Создайте файл с любым именем в расширении .php, содержащий строку:

    <?php phpinfo(); ?>

    Уложите его в корень сайта, и обратитесь к нему браузером.
    О поддержке Зенда будет понятно из таких строк большой таблицы:

    PHP Logo
    PHP Version 5.2.17
    ...  
    Zend Extension 220060519
    Zend Memory Manager enabled
    ...  
    Zend logo

    This program makes use of the Zend Scripting Language Engine:
    Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
    with Zend Optimizer v3.3.9, Copyright (c) 1998-2009, by Zend Technologies

    3) Локаль для русского языка.
    ru_RU.CP1251 или rus_RUS.CP1251

    Корректная работа строковых функций и регулярных выражений невозможна без верно установленной локали и соответствующей кодировки. Чтобы в точности быть уверенным, что одна из указанных выше локалей на хосте имеется, снова сделайте тестовый файлик в корне сайта с таким кодом:

    <?php 
       
    echo setlocale(LC_ALL,
          
    'ru_RU.CP1251',
          
    'rus_RUS.CP1251',
          
    'Russian_Russia.1251',
          
    'russian'
       
    );
    ?>

    Этот скрипт напишет на экран имя той локали, которая сервером точно поддерживается. Обратите внимание: сервером. А не Денвером каким-нибудь.

    Возможны четыре варианта.
    Два успешных:

    1. Получение на экран ru_RU.CP1251 или rus_RUS.CP1251 должно обрадовать - нужная локаль у Вас уже стоит.

    2. То же относится к Russian_Russia.1251
      Присутствует на серверах с виндовой операционкой.
      В частности, будет наблюдаться под Денвером.

    Убедитесь, что детектированная локаль прописана в настройках Наны (третий пункт). И на этом с локалью вопрос исчерпан.

    Если же тестовый скрипт выдаст любой из нижеследующих вариантов, то просите своего хостера установить локаль ru_RU.CP1251

    1. Получение на экране russian свидетельствует об отсутствии нужной локали.

    2. Если тестовый скрипт ничего не выдал на экран, русской локали на хосте точно нет.

    4) Крон, умеющий обращаться к произвольному URL

    Самое важное условие. При его невыполнении хостера нельзя признать пригодным для использования.

    Следует подчеркнуть, что любая серверная операционная система содержит в себе планировщик задач (Крон, Кронтаб, Планировщик - в Панели управления сайтом он может называться разнообразно, как на русском, так и английском языках), умеющий запускать как локальные приложения, так и произвольный URL. В данном случае от Крона требуется второе.

    Саппорт хостера может знать, а может не знать (вот только не смейтесь) синтаксис своего Крона для запуска им URL-а. В первом случае он Вам его тут же скажет, во втором можете нарваться на неадекватность. Конечно, требуется приложить неимоверное усилие, чтобы открыть документацию, и узнать из неё необходимый синтаксис, а потому склонять к такому подвигу саппорт своего хостера Вы можете долго. Но, опять-таки, разработчик скрипта к процедуре прохождения Вами этого квеста не имеет никакого отношения. Это Ваш хостер, а Вы его клиент.

    Чтобы обрести полную ясность в этом вопросе, рекомендуется ещё до приобретении скрипта Почтовой Наны озадачить саппорт своего хостера вопросом про синтаксис крона для запуска URL-а. По ответной реакции Вы сразу всё поймёте.

    Так же учтите, что заниматься установкой частоты срабатывания Крона надлежит Вам. Поэтому спрашивайте у хостера сразу, как это делается - у него может не оказаться версии классической юниксоподобной панельки, про которую всем всё известно и многократно расписано до мельчайших подробностей на всевозможных вебмастерских форумах, либо панельки в стиле "для начинающих", с выпадающими формами, где даже думать ни про что не нужно.

    5) Таймаут на исполнение скрипта не менее 30 секунд.

    Требование абсолютно логичное. Отправка письма, а уж тем более целой пачки писем, не протекает мгновенно, а является довольно длительной процедурой, так как подразумевает общение с внешними интерфейсами. Скрипт должен иметь возможность инициировать, провести, а потом корректно завершить свой цикл рассылки, не будучи отрубленным по таймауту хостером. Поэтому узнавайте значение таймаута на исполнение скрипта, и соизмеряйте его с указанной выше циферкой.

    Большинство хостеров правильно понимает своё предназначение.
    Таймаут по дефолту у них именно такой величины.

    6) Достаточный объём оперативной памяти.

    Имеется ввиду объём оперативной памяти, доступный PHP приложению. Когда запускается скрипт (вместе с интерпретатором PHP он сам занимает в памяти какой-то объём), то самому скрипту должно быть разрешено оперировать объёмом памяти не менее необходимого.

    Автор технологии предполагает, что объём базы для одной службы порядка 10 тысяч подписчиков является заурядной вещью, а потому и хостер должен обеспечивать возможность работы с таким объёмом листа рассылки, для чего требуется 10Mb оперативки.

    Зависимость необходимой оперативки от объёмы базы, выраженной в подписчиках, линейная. Так, если у Вас 20000 подписчиков, и Вы не хотите делить их на две независимые службы по 10000 человек с целью минимизации требований к ресурсам хостера, то Вам и понадобится от этого хостера 20Mb оперативки.

    7) Функционирующая PHP функция mail();

    Немного странно писать про такое, но если основное назначение Почтовой Наны - посылать письма, а Вы её почему-то планируете заселить на бесплатный хостинг, где отправка писем запрещена, или на сервер, на котором не поднят почтовый шлюз, то отправлять письма она таки не будет.

    Ещё более странно, что некоторые этого не понимают.
    Специально для них красным: хостер должен разрешать отправку писем.

    Информация к размышлению:

    Также имейте ввиду, что у любого хостера всегда есть лимиты на отправку писем. Либо не более стольки-то в час (или сутки), либо какие-то ещё.

    Реакция хостера на превышение лимита тоже может быть разной.
    От пропадания писем, посылаемых сверх лимита, до блокировки аккаунта.

    Удивительно, но находятся люди, не понимающие, что такие происки хостера не имеют никакого отношения к Почтовой Нане, а все отношения нужно выяснять именно со своим хостером. Действительно, попадаются явно неадекватные.

    Во избежание подобного сразу спрашивайте у своего хостера лимиты на отправку писем.
    А также последствия для себя при выходе за пределы этих лимитов.

Ещё пару слов о хостере.

Ранее были перечислены необходимые и достаточные требования к хостеру, не являющиеся какими-то особенными или уникальными. Самый заурядный отечественный виртуальный хостинг рублей за сто в месяц обычно им удовлетворяет. А забугорный и подавно. Но не будет лишним при обдумывании приобретения Почтовой Наны показать данный документ своему хостеру, чтобы он подтвердил актуальность требований лично для него - как правило, чёткого ответа на вопрос, какие именно ресурсы предоставляются, на сайте хостера Вы не найдёте.

Также помните о нелюбви почтовых сервисов к спамерам, и дружеском обычае блокировать корреспонденцию с айпишников сайтов, уличённых в спаме. Ваш сайт запросто может попасть на такой айпишник по абсолютно не зависящим от Вас причинам (на виртуальном хостинге в каждом айпишнике сидит по несколько сотен сайтов), и это снова внешняя по отношению к скрипту проблема. Хостер должен обеспечить нормальное функционирование всех штатных сервисов, и заниматься разбаниванием своих айпишников в почтовиках - тоже его почётная обязанность.

Поскольку, как видите, всё это довольно интимно, дружите со своим хостером, и выбирайте такую хостинговую компанию, в которой Вы можете рассчитывать на внимание и понимание, а в случае нештатных проблем - на помощь. Всякие реселлеры за рубль зелёных денег в месяц тут вряд ли сгодятся.

Требования к браузеру.

При работе с админкой необходим браузер, понимающий HTML5.
Все современные браузеры HTML5 заведомо понимают.