Как создать свой сервер для веб-сайта: пошаговая инструкция
Свой сервер для сайта можно поднять прямо на домашнем компьютере или ноутбуке за полчаса - дальше пошагово покажем как. Сразу про главное: домашний сервер хорош, чтобы протестировать сайт, потренироваться и открыть его в локальной сети. А вот держать на нём боевой сайт обычно не стоит - домашний интернет почти всегда за CGN (общий внешний IP провайдера), и круглосуточный аптайм домашнего ПК не гарантирован. Для продакшена берут хостинг, облако или выделенный сервер - об этом в конце. Если ещё не до конца ясна разница между сервером и веб-сервером, начните с неё - так дальнейшие шаги будут понятнее.
Если задача - разобраться и попробовать, поехали. Делаем локальный веб-сервер, открываем сайт в локальной сети, затем (по возможности) в интернете, и ставим CMS.

Установка веб-сервера и размещение файлов сайта
Локальный сервер - это связка программ на вашем компьютере: веб-сервер (Apache или Nginx), PHP и база данных (MySQL или MariaDB). Ставить их по отдельности необязательно - есть готовые сборки:
| Сборка | Платформа | Кому подходит |
|---|---|---|
| Open Server | Windows | Привычный графический интерфейс, удобно новичкам |
| XAMPP | Windows, Linux, macOS | Кроссплатформенный классик |
| Laragon | Windows | Лёгкий и быстрый |
| Local | Windows, macOS | Заточен под WordPress |
| Docker | любая | Гибко и ближе к боевой среде, но чуть сложнее |
Дальше - на примере Open Server, он популярен на Windows. В остальных сборках логика та же.
Шаг 1. Скачайте и установите выбранную сборку. После установки в системном трее появится значок управления сервером. Если Open Server не запускается, причина чаще всего в отсутствии Microsoft Visual C++ - при установке разрешите его загрузить.
Шаг 2. Найдите корневую папку веб-сервера: у Open Server это Domains, у XAMPP - htdocs, у Laragon - www. Создайте внутри папку с именем сайта и положите туда файлы сайта. Для имени лучше брать домен в зоне .test или .local (например, newsite.test) - так не будет конфликта с реальными доменами. Если в будущем планируете вывести сайт в интернет, заранее проверьте, что нужное доменное имя свободно (например, через Рег.ру).
Настройка доступа к сайту по локальной сети с помощью Open Server
Шаг 1. Откройте настройки сервера и выберите рабочие версии модулей: PHP 8.1-8.3, MySQL 8.0 или MariaDB 10.6+. Для локальной разработки полезно сразу включить SSL - часть функций современных браузеров работает только по HTTPS.
Шаг 2. В разделе «Сервер» включите «агрессивный режим» (галочка) - тогда сервер не падает на мелких ошибках. Там же в пункте «IP-адрес сервера» выберите «Все доступные IP» и сохраните.
Шаг 3. Узнайте локальный IP компьютера: в Windows - команда ipconfig в командной строке, в Linux и macOS - ip addr show или ifconfig. Чтобы адрес не менялся, закрепите его за этим компьютером в настройках роутера (статический IP по MAC-адресу). Иначе роутер может выдать этот адрес другому устройству, и сайт перестанет открываться.
Шаг 4. В Open Server откройте вкладку «Алиасы», в поле «Исходный домен» впишите локальный IP компьютера, а в «Конечный домен» - адрес сайта (в нашем примере newsite.test). Теперь сайт открывается с других устройств этой же сети по локальному IP.
Настройка доступа к сайту из сети интернет по IP и по имени домена
Этот этап сложнее остальных, и часто он упирается в провайдера. Большинство домашних подключений сидят за CGN (Carrier-Grade NAT): внешний IP общий на многих абонентов, и пробросить порт «снаружи внутрь» нельзя. Прежде чем городить проброс портов, проверьте, какой у вас IP.
Если белого (публичного) IP нет, прямой доступ не настроить - но есть обходные пути:
- Туннели - ngrok, Cloudflare Tunnel, локальный.рф: пробрасывают ваш локальный сайт наружу без белого IP.
- VPN до домашней сети - заходить в сайт как будто изнутри.
- Динамический DNS (DynDNS, No-IP) - если белый IP есть, но меняется.
- Облако или хостинг - если сайт нужен в интернете постоянно (об этом ниже).
Шаг 1. Узнайте свой внешний IP - через веб-интерфейс роутера или сервисы вроде 2ip.ru. Если там приватный диапазон (10.x, 100.64.x, 192.168.x) или провайдер отдаёт только IPv6 - вы за CGN, переходите к туннелям или облаку.
Шаг 2. При белом IP настройте на роутере проброс портов: 80 (HTTP) и 443 (HTTPS), при необходимости 22 (SSH) - его лучше повесить на нестандартный порт ради безопасности. Многие роутеры умеют UPnP для автоматического проброса.
Шаг 3. Свяжите домен с внешним IP. Зарегистрируйте домен у регистратора (Рег.ру, Namecheap и др.) и в его DNS создайте A-запись, указывающую на ваш внешний IP - например, 203.0.113.10. Если IP динамический, используйте DDNS-сервис, который сам обновляет запись при смене адреса.
Шаг 4. Дайте DNS время разойтись - от нескольких минут до 48 часов. На время переезда можно выставить низкий TTL, чтобы изменения применялись быстрее. После этого сайт открывается по доменному имени с любого устройства в интернете.
Главное ограничение домашнего сервера: как только домашний ПК выключится, интернет моргнёт или провайдер сменит IP - сайт станет недоступен. Для боевого сайта это и есть стоп-фактор, поэтому его выносят на хостинг, в облако или на выделенный сервер.
Установка движка (CMS)
Завершающий этап - поставить CMS. Возьмём WordPress, его ставят чаще всего; вместо него бывают и другие движки (например, headless-CMS или статические генераторы), но порядок похожий.
Шаг 1. Скачайте последнюю версию WordPress и распакуйте в корневую папку сайта. Для работы с базой данных подойдёт phpMyAdmin или Adminer - они идут в комплекте сборок.
Шаг 2. В phpMyAdmin создайте базу данных: введите имя и нажмите «Создать».
Шаг 3. Скопируйте wp-config-sample.php в wp-config.php и впишите данные доступа к базе: DB_NAME - имя созданной базы, DB_USER - имя пользователя БД, DB_PASSWORD - пароль пользователя. Не оставляйте пароль пустым даже на локальном сервере: это плохая привычка, которая потом переедет на боевой сайт. Заведите пользователя БД с паролем и пропишите его.
Шаг 4. Откройте адрес сайта в браузере. Если всё верно, запустится установщик WordPress - укажите название сайта, логин администратора, пароль и почту. Если выскочила ошибка, перезапустите сервер и проверьте данные базы. Готово - сайт работает и открывается на компьютерах и смартфонах.
Где разворачивать сайт: дома, в облаке или на своём сервере
Локальный сервер - это инструмент для разработки и учёбы. Для живого сайта выбор зависит от задачи:
| Сценарий | Где разворачивать | Почему |
|---|---|---|
| Тест, учёба, демо в локальной сети | Локальный сервер на ПК | Бесплатно, быстро, ничего не торчит в интернет |
| Небольшой боевой сайт | Хостинг или облачный VPS (от ~300 ₽/мес) | Аптайм, белый IP, не нужен свой админ и круглосуточный ПК |
| Нагрузка, контроль, свои данные | Выделенный сервер в дата-центре | Полные ресурсы и контроль, своя конфигурация, надёжность |

У домашнего сервера три слабых места, из-за которых его не держат под продакшен: сеть (CGN и отсутствие белого IP у большинства провайдеров), надёжность (домашний ПК и интернет не рассчитаны на режим 24/7) и безопасность (сервер, торчащий из дома в интернет, - мишень, ему нужны фаервол, обновления и бэкапы). Если дело дошло до боевого сайта, хостинг или выделенный сервер для интернет-магазина почти всегда выходят дешевле и спокойнее, чем возня с белым IP и аптаймом дома.
Из мелочей, которые ускоряют сайт: ставьте систему и базу на SSD - на HDD всё заметно медленнее. Какой веб-сервер выбрать - Apache или Nginx и какую серверную ОС взять, мы разбирали отдельно.
Частые вопросы
Можно ли держать сайт на домашнем компьютере?
Для теста, учёбы и доступа по локальной сети - да. Для боевого сайта в интернете - не стоит: мешают CGN, отсутствие белого IP и режим работы «пока компьютер включён».
Почему мой сайт не открывается из интернета?
Чаще всего из-за CGN: провайдер выдаёт общий внешний IP, и проброс портов не работает. Проверьте, белый ли у вас IP; если нет - используйте туннель (ngrok, Cloudflare Tunnel) или вынесите сайт в облако. Подробнее про локальный сервер - в отдельной статье.
Что выбрать для боевого сайта?
Небольшому сайту хватит хостинга или облачного VPS. Под нагрузку, полный контроль и свои данные берут выделенный сервер в дата-центре.
Нужен ли белый (публичный) IP?
Для доступа к сайту из интернета напрямую - да. Без него выручают туннели и VPN, но для постоянной работы проще арендовать хостинг или сервер с белым IP.
Open Server или Docker?
Open Server проще для новичка на Windows: поставил, нажал - работает. Docker гибче и ближе к боевой среде, но требует чуть больше знаний. Для первого знакомства берите то, что проще запустить.
Сайт перерос домашний сервер?
Инженеры ITTELO подберут выделенный сервер под ваш сайт и нагрузку, соберут и протестируют его под задачу перед отгрузкой, помогут с конфигурацией - с гарантией и поддержкой после продажи. На рынке серверов 11+ лет.
Выделенный сервер для сайта · +7 (800) 551-80-12 · info@ittelo.ru


