Идеальный сервер хостинга сайтов

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

Для начала нужно определиться, что же из себя представляет сервер для хостинга?

  1. Операционная система
  2. Веб-сервер
  3. Обработчик скриптов
  4. Сервер БД
  5. DNS
  6. Почтовый сервис

Операционная система

Исторически сложилось, что Windows для веб-хостинга практически не используется.
Из unix-систем я остановился на Debian Linux. Это один из самых старых дистрибутивов, имеет огромное комьюнити и огромный официальный репозиторий.
Из популярных альтернатив есть CentOS и Ubuntu, первый не имеет приличных репозиториев с актуальными версиями софта, а второй — форк дебиана и лучше использовать оригинал всё таки.
Конечно есть ещё FreeBSD — но другая идеология по сравнению с линуксом, у которой есть как плюсы так и минусы — не вижу смысла менять шило на мыло.

Веб-сервер

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

Обработка скриптов

Так сложилось, что я работаю только с системами управления на PHP, так что отдельно ставится именно данный интерпретатор.
Так же удачно сложилось, что работаю с популярными CMS, что позволяет без проблем использовать актуальные версии PHP, а в них порой добавляют интересные вещи.
В 5.5 например добавили OPcache от Zend штатным кешером опкода — и оно просто чудесно себя показывает под нагрузкой.

База данных

MySQL стал стандартом для баз данных, однако я постепенно перехожу на MariaDB. Этот форк даёт ряд плюсов, сохраняя при этом обратную совместимость с MySQL, что позволяет безболезненно переводить серверы на новую СУБД.

Почта

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

DNS

Аналогично почте — сторонний сервис. Меня всегда удивляет повальное желание запустить DNS сервер на своём домене, располагающемся на том же VDS, что и сам сайт. Более подробно данный пункт описан в заметке Ничего лишнего на сервере.

Панель управления

На данный момент нет панели, которая меня бы полностью удовлетворила в плане функционала, удобства и легковесности.
Все крупные разработчики панелей пичкают свои решения огромным количеством совершенно ненужного 90% пользователей функционала и не предоставляют главного — возможность использовать nginx без апача из коробки и удобного добавления сайтов. Так что я настраиваю хостинг совсем без панели и управляюсь из консоли, благо используемые компоненты крайне стабильны в работе и позволяют после первичной настройки практически забывать про сервер — работает как часы

Comments

  1. skeptic says

    green, к ISPManager как раз больше всего претензий. Это ужасающая просто панель с точки зрения безопасности, да и удобства тоже. При настройках из коробки PHP работает как mod_apache т.е. все процессы запускаются от одного пользователя, что требует полных прав на запись во все папки загрузок — чего нельзя допускать.
    Ну и конечно геморрой с созданием окружения для пользователя. Посчитайте на досуге, сколько кликов надо совершить чтобы создать пользователя Linux, привязать к нему домен, создать пользователя MySQL и БД у него. У меня через консоль это делается одной командой — только домен и пользователя надо указать и через пару-тройку секунд всё будет готово.

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

  2. green says

    без обид, но это просто кривые руки. Апач легко перенастраивается на нормальную работу, а создание пользователей и т.п. автоматизируется

  3. skeptic says

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

  4. says

    Если тысячи доров нужно клепать на поддоменах, то панель нужна. А если один сайт = 1 домен, то проще без панели.
    Хотя и дорострой можно и нужно автоматизировать скриптами.

    • skeptic says

      Доры — огромное количество повторяющихся действий и панель там тем более не нужна. Скрипты для автоматизации создания окружения/прописывания NS/распковки доров пишутся за несколько часов. В панели же будешь колупаться часами со всей этой рутиной

  5. skeptic says

    Веста не устраивает ровно тем же, чем и остальные «универсальные» панели. Её плюс — в бесплатности, но на этом отличия от других панелей заканчиваются. Она так же тащит за собой кучу совершенно ненужной фигни — DNS, FTP, почтовик и т.п., так же не работает в режиме nginx + php-fpm из коробки, создавать окружение нужно тысячей кликов по всем разделам панели..
    Тем не менее VestaCP безусловно лучше ISP — настройки по-умолчанию адекватнее, но те же проблемы в плане интерфейса и автоматизации рутинных действий.

Добавить комментарий для Константин Отменить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *