September 03, 2026 · by Alex M.
Joomla — одна из самых популярных CMS в мире, которую используют более 2 миллионов веб-сайтов. Это мощная, гибкая и расширяемая платформа, идеально подходящая для корпоративных сайтов, порталов, интернет-магазинов и образовательных платформ. В этом полном руководстве вы узнаете, как установить и настроить Joomla на VPS NVMe под управлением Linux — от начала до полностью работающего и защищённого сайта.
В отличие от shared хостинга cPanel, VPS даёт вам полный контроль над сервером: вы выбираете версию PHP, настраиваете веб-сервер под свои нужды и управляете ресурсами. Если ваш сайт растёт, VPS SSD или выделенный сервер станут следующим логичным шагом.
Преимущества Joomla на VPS:
- Полный контроль над конфигурацией PHP и веб-сервера
- Производительность выше, чем на shared хостинге
- Максимальная гибкость для расширений и шаблонов
- Масштабируемость — ресурсы можно увеличить в любой момент
Перед началом убедитесь, что у вас есть:
- VPS с Ubuntu 22.04 LTS (рекомендуется)
- SSH-доступ с правами root или sudo
- Домен, настроенный на IP-адрес VPS
- Установленный стек LEMP или LAMP (Nginx/Apache + MySQL/MariaDB + PHP)
Подключитесь к VPS через SSH и обновите пакеты:
sudo apt update && sudo apt upgrade -y
Joomla требует PHP 8.1 или новее. Установите PHP вместе с необходимыми расширениями:
sudo apt install php8.1 php8.1-fpm php8.1-mysql php8.1-xml php8.1-mbstring \
php8.1-zip php8.1-curl php8.1-gd php8.1-intl php8.1-json \
php8.1-opcache php8.1-bcmath -y
Проверьте установленную версию:
php -v
Joomla работает с MySQL или MariaDB. Подключитесь к MySQL:
sudo mysql -u root -p
Создайте базу данных, пользователя и назначьте права:
CREATE DATABASE joomla_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'joomla_user'@'localhost' IDENTIFIED BY 'OchenNadezhniyParol123!';
GRANT ALL PRIVILEGES ON joomla_db.* TO 'joomla_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Совет: Всегда используйте сложный пароль и отдельного пользователя для базы данных — никогда не используйте root.
Перейдите в директорию веб-сервера и загрузите последнюю версию Joomla:
cd /var/www/html
sudo mkdir joomla && cd joomla
sudo wget https://downloads.joomla.org/cms/joomla5/5-2-0/Joomla_5-2-0-Stable-Full_Package.zip
sudo apt install unzip -y
sudo unzip Joomla_5-2-0-Stable-Full_Package.zip
sudo rm Joomla_5-2-0-Stable-Full_Package.zip
Установите правильные права на файлы:
sudo chown -R www-data:www-data /var/www/html/joomla
sudo find /var/www/html/joomla -type f -exec chmod 644 {} \;
sudo find /var/www/html/joomla -type d -exec chmod 755 {} \;
Создайте виртуальный хост Nginx для вашего домена:
sudo nano /etc/nginx/sites-available/joomla
Добавьте конфигурацию:
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
root /var/www/html/joomla;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2)$ {
expires max;
log_not_found off;
}
location ~ /\.ht {
deny all;
}
}
Активируйте сайт и проверьте конфигурацию:
sudo ln -s /etc/nginx/sites-available/joomla /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
Сайт без HTTPS получает штрафы от Google и подвергает данные посетителей риску. Установите Let's Encrypt с помощью Certbot:
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
Certbot автоматически обновит конфигурацию Nginx и настроит редирект с HTTP на HTTPS. Если вам нужен премиум SSL-сертификат (OV или EV) для повышения доверия — его можно приобрести отдельно.
Откройте браузер и перейдите по адресу https://yourdomain.com. Вас встретит мастер установки Joomla.
jml_)Нажмите «Install». Процесс займёт несколько секунд. После завершения удалите директорию установки — Joomla предупредит вас об этом и предоставит кнопку для удаления.
sudo rm -rf /var/www/html/joomla/installation
В панели администратора (https://yourdomain.com/administrator) перейдите в System → Global Configuration:
Отредактируйте php.ini для оптимальной производительности:
sudo nano /etc/php/8.1/fpm/php.ini
Рекомендуемые значения:
memory_limit = 256M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 120
max_input_vars = 3000
opcache.enable = 1
opcache.memory_consumption = 128
opcache.interned_strings_buffer = 8
opcache.max_accelerated_files = 10000
Перезапустите PHP-FPM:
sudo systemctl restart php8.1-fpm
Если вы используете Apache вместо Nginx, переименуйте файл .htaccess:
cd /var/www/html/joomla
sudo cp htaccess.txt .htaccess
Этот шаг обязателен для корректной работы SEF URL в Apache.
Joomla становится по-настоящему мощной благодаря расширениям. Вот наиболее рекомендуемые категории:
Расширения устанавливаются через System → Install → Extensions в панели администратора.
Безопасность критически важна. Вот основные шаги:
Добавьте HTTP-аутентификацию для /administrator:
sudo apt install apache2-utils -y
sudo htpasswd -c /etc/nginx/.htpasswd adminuser
Добавьте в блок server в Nginx:
location /administrator {
auth_basic "Restricted Area";
auth_basic_user_file /etc/nginx/.htpasswd;
try_files $uri $uri/ /index.php?$args;
}
Joomla позволяет изменить путь к административной панели с помощью расширений вроде AdminExile — эффективный способ скрыть панель от ботов.
В Global Configuration → Text Filters отключите редактор PHP-файлов в бэкенде для предотвращения выполнения вредоносного кода.
В System → Global Configuration → Users включите двухфакторную аутентификацию для учётных записей администраторов.
Если у вас ещё нет активного файрвола, настройте UFW:
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
Для продвинутой защиты на уровне сервера наша команда по администрированию серверов готова настроить комплексные решения безопасности.
Добавьте в /etc/nginx/nginx.conf:
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml;
gzip_min_length 256;
gzip_vary on;
В System → Global Configuration → System:
- Cache Handler: File (или Memcached, если установлен)
- Cache Time: 15-60 минут в зависимости от частоты обновлений
Через System → Maintenance → Database можно восстановить и оптимизировать таблицы Joomla прямо из панели. Периодически выполняйте:
OPTIMIZE TABLE jos_content, jos_categories, jos_users;
Для сайтов с посетителями из разных стран CDN (например, Cloudflare) распределяет статический контент с географически близких серверов, снижая задержку.
Настройка регулярного резервного копирования обязательна. Используйте Akeeba Backup для запланированных бэкапов или создайте простой скрипт:
#!/bin/bash
DATE=$(date +%Y%m%d)
mysqldump -u joomla_user -p'OchenNadezhniyParol123!' joomla_db > /backup/joomla_db_$DATE.sql
tar -czf /backup/joomla_files_$DATE.tar.gz /var/www/html/joomla
find /backup -name "*.sql" -mtime +7 -delete
find /backup -name "*.tar.gz" -mtime +7 -delete
Сохраните скрипт и добавьте его в crontab для ежедневного выполнения:
crontab -e
# Добавьте:
0 2 * * * /usr/local/bin/backup-joomla.sh
Поддержание Joomla в актуальном состоянии критически важно для безопасности. Из панели администратора перейдите в System → Update → Joomla для обновления в один клик. Перед любым крупным обновлением обязательно создайте полную резервную копию.
Вы также можете включить автоматические уведомления об обновлениях в System → Global Configuration → Update Notification.
Joomla — зрелая и гибкая CMS-платформа, идеально подходящая для сложных проектов, которым нужно больше, чем простой блог. Установленная на VPS Linux с правильной конфигурацией — оптимизированным PHP, производительным Nginx, активным SSL и расширениями безопасности — она обеспечивает надёжную основу для любого типа сайта.
Если вы хотите сосредоточиться на контенте, а не на администрировании сервера, команда CLIQHOST готова помочь. Изучите наши предложения VPS NVMe для максимальной производительности или ознакомьтесь с блогом CLIQHOST для получения дополнительных технических руководств.
Реальные отзывы клиентов, которые доверяют CLIQHOST за производительность, надёжность и профессиональную техническую поддержку.
"We moved our online shop from a foreign host and the difference is night and day — pages load instantly and support replies in minutes, in Romanian."
"Migrated 12 client sites to CLIQHOST. Free migration, zero downtime, and the cPanel setup is exactly what my team needed. Highly recommend."
"Our NVMe VPS handles traffic spikes without a sweat. Full root, local datacenter, and billing in MDL — everything we wanted from a provider."