VDS для PHP-сайта с MySQL — свой сервер: ставите PHP 8, поднимаете базу, кладёте скрипт в document root, сами решаете, Apache это или Nginx. Для доски объявлений, магазина и тем более торгового кабинета shared с «установщиком WordPress» часто узкий.
Ниже — практичный минимум под продукты Microscript, без маркетинга про «облачную масштабируемость».
Что должно быть на машине
- Root или sudo — иначе не поставите нужный PHP и cron как надо. См. VPS с root.
- PHP 8.x + mysqli, mbstring, curl, gd/imagick — требования.
- MySQL 8 / MariaDB 10.3+, базы в utf8mb4.
- NVMe/SSD, не умирающий HDD.
- Публичный IPv4, открытые 80/443, SSH на нестандартном порту по желанию.
Ресурсы грубо
Старт для доски/магазина: 2 CPU, 4 GB RAM, 40+ GB диска. 1 GB RAM на «PHP + MySQL + панель» — уже тесно, OOM killer будет знакомым гостем. Торговые платформы и котировки — смотрите нагрузку отдельно, запас по CPU важнее красивого hostname.
Inode и место под фото объявлений съедаются быстрее, чем кажется. Мониторьте диск: мониторинг.
Панель или голый сервер
ISPmanager, Fastpanel, Hestia — быстрее старт, меньше ручного nginx. Голый Ubuntu + Nginx + PHP-FPM — гибче и понятнее, если умеете. Каркас веба: Nginx + PHP-FPM.
Не берите managed WordPress-VDS под наш архив — лишние ограничения и другой стек.
Сеть и безопасность
Сразу закройте лишнее: MySQL только на localhost, SSH ключами, пароль root сложный. Минимальный firewall: firewall на VDS. SSL: Certbot — SSL.
Бэкапы на соседний диск/S3/другой VDS, не только «снимок раз в месяц, который никто не проверял»: бэкап.
Установка скрипта на VDS
- Создайте vhost, root на каталог сайта.
- PHP-FPM пул под пользователя сайта.
- Пустая база, пользователь с правами на неё.
- Залейте файлы, права на upload — chmod.
- Установщик в браузере — установка.
- Cron — cron.
Ошибки базы и 500 те же, что везде: MySQL, 500.
Локалка до покупки
Обкатайте архив на MicroServer. Поймёте продукт без оплаты сервера. Потом перенос: перенос скрипта, дамп — миграция MySQL.
Администрирование
Обновления ОС и PHP — ваша зона. Не крутите composer update и apt full-upgrade в пятницу на проде без бэкапа. Панель Microscript, если используете в контуре — см. связанные мануалы по продуктам; сам VDS от панели не зависит.
Поддержка по скрипту не заменяет системного администратора сервера. Что входит в сопровождение продукта: SLA, как писать по скрипту — поддержка.
ОС и регион
Ubuntu LTS или Debian Stable — меньше сюрпризов с пакетами PHP. «Самый свежий rolling» на бою не нужен. Регион датацентра берите ближе к аудитории: для РФ-аудитории европейский узел с плохим пирингом даст тупые таймауты на картинках, хотя CPU ещё свободен.
IPv6 включайте, если умеете закрыть его теми же правилами firewall. Открытый mysql на IPv6 при закрытом IPv4 — уже встречали в тикетах. Правила: firewall.
Диск и фото
Доска объявлений и магазин жрут место превьюшками. 20 GB «хватает на систему» и не хватает на год пользовательских загрузок. Смотрите не только ГБ, но и лимит inode у некоторых виртуалок. Когда inode кончились, писать в upload нельзя — скрипт орёт permission denied или ошибку сохранения файла, хотя df по гигабайтам ещё показывает свободное место.
Вынесите бэкапы с системного диска. Иначе ночной dump + tar заполнят раздел до 100% и ляжет MySQL. Схема копий: бэкап.
Панель vs ручной стек — ещё раз
Панель ускоряет создание доменов и баз. Ручной Nginx прозрачнее, когда надо понять, почему 502. Если берёте панель — всё равно умейте читать её nginx-include и лог PHP. «Переустановить PHP одной кнопкой» не лечит неверный пароль в конфиге скрипта.
Связка без панели: Nginx + PHP-FPM. Root-доступ как условие: VPS с root.
Почта, DNS, домен
Домен может жить у регистратора отдельно от VDS. A-запись на IP сервера, TTL перед переездом лучше уменьшить заранее. Почту на том же VDS поднимать не обязательно — часто спокойнее внешний почтовый сервис, а на сервере только веб и БД.
SSL после того, как DNS уже указывает сюда: SSL. Если выпускаете сертификат до смены DNS — Let’s Encrypt не подтвердит домен.
Нагрузка и апгрейд
Сначала смотрите slow-логи MySQL и время ответа PHP, потом покупайте «ещё 8 CPU». Часто упираются в отсутствие индексов на кастомных правках или в cron, который долбит тяжёлый пересчёт каждую минуту. Про cron: задачи. Мониторинг uptime и диска: мониторинг.
Вертикальный апгрейд VDS у провайдера обычно проще горизонтального зоопарка. Пока один сервер тянет CPU и диск — не плодите микросервисы ради микросервисов.
Миграция на VDS со shared
- Поднять стек и пустую базу на VDS.
- Снять файлы и дамп со shared.
- Развернуть, прописать конфиг.
- Проверить по hosts-файлу на своём ПК, не трогая DNS.
- Переключить DNS, выключить cron на shared.
Подробнее: перенос, дамп. Локальная репетиция переноса — хороший тон: MicroServer.
Если на новом VDS сразу 1045 — вы перенесли конфиг со shared-паролем и не создали пользователя: ошибка базы. Права на upload после tar от root: chmod.
Снапшоты у провайдера делайте перед крупным апгрейдом PHP или сменой панели. Это не отменяет логический бэкап сайта, но спасает, когда апдейт ОС убил сеть. После снапшота всё равно проверьте, что сайт и cron живы. Документация по root-доступу и первому дню: VPS с root. Если берётеManaged-тариф без root «чтобы не париться» — убедитесь, что вам реально включат PHP 8 и cron, иначе вернётесь к статье про хостинг с теми же граблями, только дороже.
Частые вопросы
Vds для php сайта с mysql?
Скрипту нужен root, PHP 8 и своя база. Shared-хостинг с панелью «один клик» часто не подходит.
Сколько времени занимает «VDS для PHP-сайта и скрипта»?
Ориентир по тексту мануала — около 5 мин. На практике зависит от хостинга и подготовки базы.
Нужен ли отдельный сервер?
Для большинства скриптов достаточно хостинга или VDS с PHP и MySQL. Подбор сервера — в разделе VDS и требованиях к PHP/MySQL.
Vps с root для php скрипта?
Разбор рядом в мануале по этому запросу. vps с root для php скрипта
Настроить nginx php-fpm для скрипта?
Разбор рядом в мануале по этому запросу. настроить nginx php-fpm для скрипта