Что такое виртуальный хост
Настройка виртуальных хостов на Apache для начинающих
В прошлых статьях мы установили и настроили на локальном компьютере сервер Apache. В принципе, на этом можно было бы остановиться, так как сервер находится в рабочем состоянии и его можно спокойно использовать в работе. Но, по личному опыту, могу сказать, что использование только одного хоста localhost не очень удобно при разработке нескольких сайтов, так как для каждого сайта нужно будет создавать в каталоге localhost отдельный каталог и со временем в ней (папке localhost) будет очень трудно разобраться и что-то найти. Да и при тестировании разрабатываемого проекта гораздо удобнее набирать в браузере адрес вида test, чем localhost/test. Поэтому мы приступаем к настройке виртуальных хостов на локальном сервере.
Вообще, существует два способа конфигурирования виртуальных хостов: на основе имени и на основе IP-адреса. Но, так как мы настраиваем локальный сервер и у нас только один IP (кстати, для локалки он 127.0.0.1), то вариант с привязкой к IP нам не подходит и мы будем рассматривать вариант с привязкой к имени.
В прошлой статье я уже упоминал, что в файле конфигурации httpd.conf сервера есть строчка Include conf/extra/httpd-vhosts.conf. Мы ее уже раскомментировали, поэтому собственно и переходим к этому файлу. Найти его можно в папке Apache/conf/extra/.
Дальше в файле идут секции VirtualHost. Как видно из названия, каждая секция описывает настройки каждого виртуального хоста. Обязательно должна быть хотя бы одна такая секция, которая описывает настройки для localhost.
DocumentRoot “D:/server/localhost/www”
ServerName localhost
ErrorLog “D:/server/logs/localhost.error.log”
CustomLog “D:/server/logs/localhost.access.log” common
Директива DocumentRoot в этой секции указывает на папку, к которой будет происходить обращение при вызове адреса localhost.
ServerName как раз содержит имя нашего виртуального хоста, то есть его адрес. Сюда можно вписывать как адреса вида localhost, test, site, так и адреса localhost.ru, test.com, www.site.org.
В ErrorLog и CustomLog мы указываем, где будут хранится логи этого виртуального хоста. Обратите внимание, имеет смысл для каждого хоста добавлять в имя файла лога название этого хоста, чтобы в будущем было легко найти лог требуемого хоста. Эти директивы можно и не указывать, но тогда логи этого виртуального хоста будут храниться в общих логах сервера.
ScriptAlias /cgi-bin/ “d:/server/host_name/cgi-bin”
Создает ссылку на папку скриптов cgi-bin для хоста host_name.
Options Indexes Includes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
Настройки директории хоста host_name, их мы разбирали в прошлой статье.
После настройки файла httpd-vhosts.conf проверим правильность его конфигурации. В каталоге D:\server\Apache\bin\ создайте файл httpd-S.cmd с содержимым:
“D:\server\Apache\bin\httpd.exe” –S
pause
После запуска этого файла вы увидите окно с отчетом о проверке, Syntax OK в конце говорит о том, что все настройки в порядке.
Теперь нужно прописать созданные хосты в файл C:\Windows\system32\drivers\etc\hosts. Для этого открываем его текстовым редактором и вносим следующие записи:
Сохраните файл и перезапустите Apache. Попробуйте разместить в каталогах созданных вами виртуальных хостов какие-нибудь тестовые файлы (например index.html) и из браузера открыть хосты по адресам, указанным в директории ServerName каждого хоста.
Если вам приходится часто создавать виртуальные хосты и не очень хочется каждый раз редактировать все эти файлы и перезапускать Apache вручную, создайте в папке сервера (D:\server\) файл createVH.cmd с таким содержимым:
@cls
@rem Получаем текущую папку. Если у вас структура папок сервера как у меня, но он установлен, например на другом диске, укажите здесь вместо %
dp0 путь с нему (например, D:\server\) косая черта в конце обязательна.
@set server_path=%
dp0
:dir_exist
@set /P new_dir=»Enter new VHost name:»
@set /P ip_add=»Enter your IP address:»
@ if exist %server_path%%new_dir% echo «VHost %new_dir% already exist. Please re-enter Vhost name.»
@ if exist %server_path%%new_dir% goto dir_exist
@md %server_path%%new_dir%
Теперь для создания хоста просто запустите этот файл, впишите в ответ имя нового хоста и IP, который будет указываться в секции VirtualHost файла httpd-vhosts.conf. По окончанию работы программа сама закроется. Вам останется только проверить созданный хост, набрав в адресной строке браузера имя, которое вы вписали в программу. Если все успешно прошло, то вы увидите страницу с именем нового хоста.
Обратите внимание, программа рассчитана на то, что структура каталогов сервера соответствует той, которую я указывал в первой статье. Если у вас установлен сервер по другим путям, поправьте файл в соответствии с ними.
Что такое хостинг и как его выбрать
Блочный редактор писем, готовые шаблоны email, формы подписки и автоматизация. Запускайте email-рассылки, чтобы быть на связи со своими клиентами.
Где взять базу? Как сделать красивое письмо? Какие показатели смотреть? Расскажем об этом в бесплатном курсе из 16 писем. Татуировка в каждом письме!
Рассказываем про инструменты для email-рассылок. Обсуждаем лучшие примеры и механики. Говорим о деньгах. Публикуем вакансии.
Хостинг — это услуга, которая физически размещает страницы сайта на сервере. Иными словами, это удалённый круглосуточный компьютер, где хранится ваш сайт.
Даже простой лендинг нужно где-то хранить. Персональный компьютер под такие задачи подходит плохо: у него может обрываться соединение с интернетом, а мощности далеко не всегда хватает, чтобы выдержать большой поток посетителей. Поэтому сайты, которые размещены на домашних компьютерах, как правило, долго загружаются. А это плохо и для пользователей, и для продвижения самого сайта.
Как выбрать хостинг, если вы новичок:
Для начала нужно определиться с типом хостинга: будет ли проект соседствовать с другими на ресурсе или иметь собственное пространство для хранения. Существуют 4 основных вида хостинга в зависимости от способа размещения проектов на сервере.
Определяемся с типом хостинга
Виртуальный хостинг. Обычно его имеют в виду почти всегда, когда говорят «веб-хостинг». Ваш проект будет расположен на одном сервере вместе с другими веб-проектами.
Средняя стоимость виртуального сервиса — до 20$ в месяц.
Виртуальный хостинг подходит новичкам и небольшим проектам с посещаемостью до 3 000 человек в сутки, когда нужно быстро и дешёво настроить доступ к сайту в интернете. Его стоит выбирать в том случае, если у вас очень простой проект, не требующий настройки его окружения со стороны самого сервера. Например, если для работы проекта нужно будет сменить операционную систему или программное обеспечение хостинга, большинство провайдеров откажут.
При увеличении мощности проекта, например, в случае утяжеления сайта, вам предложат сменить тариф на более дорогой или перейти на выделенный хостинг.
В чем минус виртуального хостинга
Веб-хостинг используют сотни клиентов одновременно. Вы напрямую зависите от других пользователей этого сервера. Если одному проекту резко потребуется большое количество системных ресурсов, то другие проекты в плане производительности могут серьезно пострадать.
Выделенный виртуальный сервер (VPS — Virtual Private Server). Проект получает отдельное место и вычислительные мощности на одном мощном сервере. Производительность будет зависеть только от выбранного тарифа. Именно тариф определяет объем системных ресурсов, процессорные мощности, объем оперативной памяти, место на дисках и ширину сетевого канала.
Такой хостинг подходит для интернет-магазинов и сайтов с посещаемостью до 10 000 человек в сутки. Объем дискового пространства практически неограничен. Преимущества такого хостинга в приватности (доступ к данным есть только у владельца, в отличие от виртуального) плюс можно мгновенно увеличить мощность без остановки работы проекта.
Выделенный физический сервер. В этом случае провайдер выделяет для проекта отдельный физический сервер. Заменяет собственное локальное оборудование, где вся мощность используется одним или нескольким проектам.
Работаем с виртуальными хостами
Так как большинство читателей работают с операционной системой Windows, то сначала организуем виртуальные хосты в Windows 7.
Виртуальные хосты в Windows 7
В качестве примера поместим один или несколько проектов на диск D: локального компьютера. Сначала организуем структуру каталогов. На диске D: создаем каталог «mysites», а в нём каталог для первого сайта «site1». В каталоге «site1» сделаем два подкаталога: «www» и «logs». В первом подкаталоге будет располагаться сам сайт, а во втором, журналы виртуального хоста: access.log (журнал доступа) и error.log (журнал ошибок).
Файлы журналов создавать не надо, они будут созданы автоматически. А в каталоге «www», пока нет сайта, поместим простейший файл-заглушку «index.html» следующего содержания:
Теперь немного поправим настройки для виртуальных хостов веб-сервера Apache. Открываем C:\xampp\apache\conf\extra\ httpd-vhosts.conf
Как видим, этот файл уже содержит два примера виртуальных хостов. Не будем их трогать, а ниже разместим следующие строки:
Первая директива NameVirtualHost *:80 включает поименное использование виртуальных хостов на 80-ом порту (обычный http, если нужен https, используем 443 порт).
Следующие четыре строки это общая секция для всех виртуальных хостов. Если клиент обращается к серверу по IP-адресу или по несуществующему имени он попадет на этот виртуальный хост. В нашем случае в корневую директорию веб-сервера. Остальные строки это описание нашего первого виртуального хоста. Если нужно добавить ещё один виртуальный хост, то просто копируем эту секцию, вставляем ниже и по аналогии изменяем данные. Сохраняем файл.
Значение данных в секции виртуального хоста:
Из панели управления XAMPP перестартовываем Apache. Изменяем файл C:\Windows\System32\drivers\etc\hosts. Дописываем в него две строки:
Вместо 127.0.0.1 можно написать 127.0.0.2, а для следующего виртуального хоста 127.0.0.3, но в этом нет особой нужды. Об этом напишу в другой раз. А сейчас сохраняем файл. Открываем браузер и адресной строке вводим http://site1 или просто site1. Если всё сделано правильно, видим информацию из файла-заглушки.
Виртуальные хосты в Debian GNU/Linux
Настройка виртуальных хостов в Linux мало чем отличается от их настройки в Windows. Разве что созданием структуры каталогов. Оно и понятно, Apache кроссплатформенное решение, настроечные файлы практически одинаковы.
При установке XAMPP, корневой директорией веб-сервера Apache является каталог /opt/lampp/htdocs. А вот когда Apache устанавливается в Linux отдельным пакетом, то по умолчанию корневой директорией является каталог /var/www. Вот в этот каталог мы и поместим виртуальные хосты.
В качестве примера, создадим каталог /var/www/site1, который будет содержать два подкаталога: logs для журналов и www для файлов сайта.
Делаем владельцем каталога site1 пользователя www-data:
В каталог /var/www/site1/www помещаем файл-заглушку index.html
Открываем файл /opt/lampp/etc/extra/httpd-vhosts.conf и удаляем всё его содержимое. Добавляем следующий код:
Последние 15 строк кода – это как раз описание виртуального хоста site1. Если в дальнейшем надо будет добавить ещё один виртуальный хост, то просто скопируйте эти строки и измените пути к директориям.
Открываем файл /opt/lamp/etc/httpd.conf и раскомментируем (т. е. удалим символ решетки) строку 488:
Правим файл /etc/hosts. Ниже строки
Вставляем строку следующие строки:
В адресной строке браузера набираем
http://site1 или просто site1
Если вы видите страницу-заглушку, значит, всё сделали правильно!
Помните, что у нас вы можете не только купить готовый сайт или заказать его разработку, но и подобрать подходящий тариф поддержки сайта, заказать продвижение сайта в поисковых системах, а так же зарегистрировать домен в одной из двухсот доменных зон и выбрать недорогой тариф хостинга! Айтишник РУ
Хостинг: варианты, сравнения, пользовательская статистика
Удивительно, но из обилия статей на тему хостинга в Интернете едва ли найдётся десяток, где тема раскрыта доступным для всех языком. Часто даже профессионалы и опытные пользователи отмечают, что в большинстве описаний «чёрт ногу сломит», особенно на сайтах компаний, предлагающих эту услугу. Что уж говорить о тех, кто не разбирается в цифровых технологиях, но хочет их использовать в своём бизнесе с пониманием хотя бы основ.
Мы хотим исправить ситуацию и рассказать доходчиво для интересующихся любого уровня подготовки к вопросу, какие сегодня есть возможности хостинга, чем они отличаются, каковы преимущества одних перед другими и какова пользовательская статистика в России и за рубежом. Статья рассчитана на широкий круг читателей от неофитов до продвинутых юзеров (поэтому в скобках часто даны объяснения терминов, хорошо известных опытным пользователям).
Для начала немного введём в курс дела тех, кто не разбирается в теме статьи и обозначим, что такое хостинг и кому это надо.
Хостинг (hosting) — это услуга, предоставляемая компаниями хостинг-провайдерами (хостерами), которая заключается в размещении информационных ресурсов пользователей на их (компаний) серверах. Функциональность сервера зависит от установленного программного обеспечения, которое, в свою очередь, зависит от операционной системы. Хостинги отличаются наличием тех или иных служб, возможностью поддержки различных технологий, языков программирования и скриптов. Также различаются по количественным и качественным ограничениям (дисковое пространство, количество сайтов, пропускная способность каналов и прочее). Доступ пользователя к своим данным реализован через личный кабинет. Обработка запросов к информационным ресурсам заказчика ведётся в режиме реального времени 24/7. В услугу хостинга входит техподдержка, обеспечение безопасности и резервное копирование данных.
Информационные ресурсы (здесь) — это сайты различного функционала: интернет-магазины, корпоративные сайты, интернет-порталы, информационно-новостные сайты, веб-сервисы. Они состоят из обилия цифровых данных:
Что такое выделенный сервер
Начать стоит именно с него, потому что остальные хост-услуги являются виртуальными аналогами выделенного сервера.
Выделенный сервер (dedicated server) — это реальный физический сервер (bare-metal server), который хостинг-компания предоставляет клиенту в аренду. Важно то, что хостер выделяет сервер клиенту целиком в нераздельное пользование, то есть все ресурсы сервера, всё его «железо» используются только одним арендатором. Есть возможность гибкой настройки системы и оптимизации её «под себя», включая установку ПО. По причине полного владения выделенный сервер — самая дорогая хостинг-услуга.
Это мощный компьютер, установленный в стойку с другими подобными серверами и коммутатором. Серверные стойки локализуются в хостерских ЦОДах или индивидуальных дата-центрах (то есть принадлежащих самой компании для её бизнес-целей; в этому случае речь не идёт о выделенных серверах, поскольку их никто не выделяет в аренду — машины являются собственностью компании и называются просто серверами).
Выделенный сервер необходим для размещения проектов, которые либо требуют мощных вычислительных ресурсов, либо не могут соседствовать на одной машине с другими проектами или их компонентами (например, сложное бизнес-приложение, или база данных, или площадка сетевой игры), либо требуют прямого доступа к оборудованию.
▍Критерии выбора выделенного сервера
Что такое виртуальный хостинг
Виртуальный хостинг (shared hosting) — это предоставление в аренду одного физического сервера сразу нескольким арендаторам. Его аппаратные мощности распределяются между всеми пользователями. Во избежание неравномерности распределения мощностей машины (процессорной мощности, дисковой и оперативной памяти) и их дефицита во время пиковых нагрузок некоторые хостеры ограничивают ресурсы сервера для скриптов отдельного пользователя (script — файл или программа со сценарием автоматизации некоторых процессов сайта). Настройка «под себя» отсутствует — все пользуются одним и тем же ПО, которое устанавливает провайдер. Подходит для небольших и несложных проектов. Это самый дешёвый вид хостинга.
▍Критерии выбора виртуального хостинга
Что такое VPS и VDS
VPS (Virtual Private Server) и VDS (Virtual Dedicated Server) — по сути одно и то же. Это виртуальные серверы, эмулирующие работу физического сервера и предоставляемые хостером в аренду клиенту с максимальными привилегиями: установка операционной системы и программного обеспечения, root-доступ (права главного администратора). Клиент получает в пользование выделенные аппаратные ресурсы сервера с полным управлением и контролем, но, возможно, не все, имеющиеся на машине. То есть на одном физическом сервере запущено несколько виртуальных серверов под разных клиентов, но на каждом из них администратор (заказчик) может работать так же, как на отдельной физической машине, при этом арендная плата существенно ниже, чем за выделенный сервер.
▍Разница между VPS и VDS
VPS. Виртуализация такого сервера осуществляется в рамках операционной системы (контейнеризация) с помощью специальных технологий (FreeBSD Jail, Parallels Virtuozzo Containers, iCore Virtual Accounts, OpenVZ и других). Клиент может работать в персональном изолированном программном окружении с правами суперпользователя, но не может поменять саму операционную систему или её ядро. Также существуют разные лимитирования, основанные на политике хостера (например, непрерывная доступность ресурсов сервера).
VDS. Виртуализация этого вида сервера осуществляется на аппаратном уровне. Это физическое выделение ресурсов машины, точнее эмуляция её физических элементов при помощи специальных технологий (VMWare, LDoms, KVM, Microsoft Hyper-V, XEN). Клиент не только получает в постоянное пользование ресурсы CPU, дискового пространства и памяти, но также может устанавливать иную операционную систему и совершать её модификации вплоть до смены настроек BIOS.
Этот тип хост-услуг набирает всё большую популярность в мире благодаря соотношению цена/качество. Под качеством здесь понимается в первую очередь широта возможностей управления своими хостируемыми проектами и простота масштабируемости выделяемых ресурсов. Помимо владельцев или системных администраторов сайтов, его особенно любят разработчики для собственно разработки и тестирования нового ПО. А бизнесу VPS/VDS хостинг помогает сократить расходы.
▍Критерии выбора VPS/VDS
▍Статистика использования VPS в диаграммах
На основе поисковых запросов 500 000 российских пользователей в 2017 году на сайте poiskvps.ru
По данным J’son & Partners Consulting оборот российских хостеров в сегменте IaaS примерно совпадает с затратами российских компаний на западные хостинг-сервисы.
Что такое облачный хостинг
Облачный хостинг использует облачные ресурсы для развёртывания сайтов, мобильных приложений и даже целых «офисов в облаке» (виртуальный офис). В отличие от других видов хостинга это происходит не на одном локальном сервере, а на нескольких связанных в кластер физических и виртуальных серверов к которым добавляются связанные в сеть системы хранения данных (SAN). При аренде пользователь платит только за используемые по факту ресурсы, которые могут быстро масштабироваться или отключаться в зависимости от нужд. Причём оплата почасовая, то есть можно настроить потребление ресурсов в дневное и ночное время. Настройки могут регулироваться в автоматическом режиме через приложение. Эта гибкость — основное преимущество облачного хостинга.
Облачная модель набирает популярность во многом благодаря разработкам BaaS (Backend-as-a-Service — бэкенд как услуга) и IaaS (Infrastructure-as-a-Service — инфраструктура как услуга). Не будем углубляться в её описание, так как это выходит за рамки статьи. Скажем только, что разработчиков привлекает в ней универсальность кросс-платформенного бэкенда для любого проекта, а владельцев бизнеса — надёжность резервного копирования и удобство коллективной работы над проектами. Подходит для крупных и быстрорастущих проектов, компаний с сезонными колебаниями спроса.
В облаке сайты размещаются в обособленных средах — контейнерах. В одном контейнере, например, могут располагаться рабочие версии сайтов, в другом — тестовые. Процессы и возможные неполадки в работе сайтов как внутри контейнеров, так и между контейнерами никак не отражаются на остальных сайтах. Внутри отдельного контейнера можно размещать неограниченное количество проектов.
▍Критерии выбора облачного хостинга
▍Облачная статистика по России
Источник: iKS-Consulting, 2016.
Источник: iKS-Consulting, 2018.
Сравнение выделенного сервера, виртуального сервера, виртуального хостинга и облачного хостинга
Резюмируя, отметим: выбирая хостинг-провайдера, ориентируйтесь не только на обещанную информацию с его сайта и отзывы — задавайте ему вопросы! Вплоть до того, как обеспечена пожарная безопасность в ЦОДе. Помните о масштабируемости проектов — то, что сейчас представляет собой ваш сайт может весьма отличаться от того, чем он будет через 2 года. Определившись с типом хостинга, следуйте нашим рекомендациям из разделов «критерии выбора», которые есть в каждом блоке.
Виртуальный хостинг или виртуальный сервер — что выбрать?
Несмотря на появление дешевых VPS, традиционный веб-хостинг умирать не собирается. Попробуем разобраться, в чем состоят различия между двумя подходами к размещению сайтов и какой из них лучше.
На сайте каждого уважающего себя провайдера обязательно найдется сравнение традиционного веб-хостинга с виртуальными серверами. Авторы статей отмечают сходство VPS с физическими машинами и проводят параллели между ними и собственными квартирами, отводя веб-серверам коллективного пользования роль коммуналок. Поспорить с такой трактовкой трудно, хотя мы попытаемся все не так однозначно. Давайте заглянем чуть глубже поверхностных аналогий и разберем для начинающих пользователей особенности каждого варианта.
Как устроен традиционный хостинг?
Чтобы веб-сервер мог обслуживать различные сайты, были придуманы т.н. name based virtual host. Протокол HTTP предполагает возможность передачи в составе запроса URL (единого указателя ресурса) — это позволяет сервису понять, к какому именно сайту обращается браузер или иная клиентская программа. Остается только привязать доменное имя к нужному IP-адресу и прописать в конфигурации корневой каталог для виртуального хоста. После этого можно разложить файлы сайтов разных пользователей в их домашние каталоги и открыть доступ по FTP для администрирования.
Чтобы веб-приложения на стороне сервера (различные скрипты или даже системы управления контентом — CMS) запускались с правами того или иного пользователя хостинга, в Apache был создан специальный механизм suexec. Понятно, что настройки безопасности веб-сервера не позволяют пользователям лезть в чужой огород, но в целом это действительно похоже на коммунальную квартиру с раздельными комнатами и общим адресом (IP) на сотни сайтов. Сервер баз данных (обычно MySQL) для виртуальных хостов тоже общий, но доступ у пользователя хостинга есть только к его личным базам. Все программное обеспечение сервера кроме скриптов сайта обслуживается провайдером, менять его конфигурацию по своему усмотрению клиенты не могут. Процесс управления аккаунтами автоматизирован: для этих целей у каждого хостера есть специальная веб-панель, через которую можно управлять услугами.
Как устроены VPS?
Сравнение виртуальных серверов с физическими не вполне корректно, поскольку на одном «железном» хосте работает множество VPS. Образно выражаясь, это уже не коммуналка, а многоквартирный дом с общим подъездом и едиными несущими конструкциями. Для создания отдельных «квартир» (VPS) в пределах одного «дома» (физического сервера) задействованы средства установленной на хосте операционной системы и различные технологии виртуализации.
Если применяется виртуализация уровня ОС, процессы клиента просто работают в изолированном окружении (или неком контейнере) и не видят чужих ресурсов и процессов. Отдельная гостевая ОС в этом случае не запускается, а значит программное обеспечение в гостевом окружении должно быть бинарно совместимо с системой на физическом хосте — как правило клиентам предлагают специально модифицированные под такой способ эксплуатации дистрибутивы GNU/Linux. Есть и более продвинутые варианты, вплоть до эмуляции физической машины, на которой можно запустить почти любую гостевую ОС даже с собственного инсталляционного образа.
С точки зрения администратора любой VPS мало чем отличается от физического сервера. При заказе услуги хостер разворачивает выбранную конфигурацию, а дальше обслуживание системы ложится на плечи клиента. При этом можно установить нужное программное обеспечение и как угодно его настроить — полная свобода выбора веб-сервера, версии PHP, сервера баз данных и т.д. IP-адрес у VPS тоже свой, его не придется делить с сотней — другой соседей. На этом с описанием основных различий мы закончим и перейдем к преимуществам и недостаткам, от которых зависит выбор решения.
Какой вариант проще и удобнее?
Виртуальный хостинг не требует администрирования обеспечивающего работу сайта окружения. Клиенту не придется самому устанавливать, настраивать и обновлять системное и прикладное ПО, а в ряде случаев панель управления хостингом позволяет устанавливать и CMS — такой вариант выглядит привлекательным для новичков. С другой стороны задачи тонкой настройки CMS все равно придется решать самостоятельно, к тому же за относительно низким порогом входа прячется меньшая гибкость решения. Выбор софта будет ограничен: на виртуальном хостинге нельзя, например, по своему желанию поменять версию PHP или MySQL, а тем более установить какой-нибудь экзотический пакет или выбрать альтернативную панель управления — придется пользоваться предложенными поставщиком услуг средствами. Если провайдер проведет обновление сервера, в ваших веб-приложениях могут возникнуть проблемы программной совместимости.
VPS лишен этих недостатков традиционного хостинга. Клиент может сам выбрать нужную ему ОС (необязательно Linux) и установить любое программное обеспечение. Настраивать и администрировать окружение придется самостоятельно, однако процесс можно упростить — все хостеры предлагают сразу инсталлировать на виртуальный сервер панель управления, которая автоматизирует процесс администрирования. Благодаря ей большой разницы в сложности управления между традиционным хостингом и VPS не будет. К тому же никто не запрещает установить собственную панель, не входящую в список предложений провайдера. В целом накладные расходы на администрирование VPS не так велики, а большая гибкость решения с лихвой окупает некоторые дополнительные трудозатраты.
Какой вариант безопаснее и надежнее?
Может показаться, будто размещение сайтов на традиционном хостинге безопаснее. Ресурсы разных пользователей надежно изолированы друг от друга, а за актуальностью программного обеспечения сервера следит провайдер — это отличный вариант, но только на первый взгляд. Злоумышленники далеко не всегда эксплуатируют уязвимости в системном ПО, обычно сайты взламывают, используя незакрытые дыры в скриптах и небезопасные настройки систем управления контентом. В этом смысле никаких преимуществ у традиционного хостинга нет — ресурсы клиентов работают на тех же самых CMS — зато недостатков хватает.
Главная проблема виртуального хостинга заключается в общем IP-адресе для сотен сайтов разных пользователей. Если кого-то из ваших соседей взломают и начнут, например, рассылать через него спам или проводить другие вредоносные действия, общий адрес может попасть в различные черные списки. В этом случае пострадают все клиенты, чьи сайты используют тот же IP. Если сосед попадет под DDoS-атаку или создаст чрезмерную нагрузку на вычислительные ресурсы, пострадают остальные «жильцы» сервера. Управлять выделением квот для отдельных VPS провайдеру намного проще, к тому же виртуальному серверу присваивается отдельный IP и необязательно один: можно заказать любое их количество, дополнительный сервис по защите от DDoS, антивирусный сервис и т.д. В смысле безопасности и надежности VPS превосходит традиционный хостинг, нужно только своевременно обновлять установленные программы.
Какой вариант дешевле?
Еще несколько лет назад ответ на этот вопрос был однозначным — при всех ее недостатках комната в коммуналке была намного дешевле отдельной квартиры. Отрасль не стоит на месте и сейчас на рынке появилось множество бюджетных VPS: у нас можно арендовать собственный виртуальный сервер на Linux за 130 рублей в месяц. В среднем месяц работы бюджетного VPS обойдется клиенту в 150 — 250 рублей, при таких ценах мириться с проблемами традиционного хостинга нет смысла, кроме случая, когда на сервере нужно разместить простейшие сайты-визитки. К тому же тарифные планы виртуального хостинга ограничивают количество сайтов и баз данных, а на VPS клиент ограничен только емкостью накопителя и вычислительными возможностями сервера.