22.01.2021

Установка Joomla на Linux VPS

Joomla — это система управления содержимым сайта или, иначе говоря, CMS (англ. Content Management System), в которой используется скриптовый язык PHP и база данных MySQL или PostgreSQL. Joomla проста в установке, предлагает множество функций и настроек, которые делают ее очень гибкой и удобной в использовании для начинающего пользователя.

При заказе VPS/VDS -сервера у начинающих пользователей возникают вопросы как создать свой сайт. Рассмотрим установку CMS на Linux-сервер.

Системные требования

Необходимым условием установки Joomla на ваш сервер является наличие так называемого LAMP (связка Linux Apache MariaDB/MySQL PHP), либо LEMP-стека (Linux Nginx MariaDB/MySQL PHP).

Также необходимо изменить некоторые настройки PHP, которые находятся в файле php.ini. Рекомендованные значения параметров php.ini:

Настройки и установка

Все действия, описанные в данной статье, выполняются от имени суперпользователя root. Скачиваем установочный пакет нашей CMS:

root@webserver:~# wget https://downloads.joomla.org/ru/cms/joomla3/3-9-13/Joomla_3-9-13-Stable-Full_Package.zip

На момент написания статьи последняя стабильная версия — 3.9.13. Скачать последний стабильный установочный пакет вы можете на официальном сайте Joomla. С официального сайта есть возможность скачать установочный пакет, упакованный как .tar.bz2, .tar.gz и zip-архив. Необходимо создать новый каталог для сайта на Joomla в корневой директории веб-сервера и распаковать туда архив:

Создадим каталог:

root@webserver:~# mkdir /var/www/html/mysite.com

Распаковываем архив:

root@webserver:~# unzip Joomla_3-9-13-Stable-Full_Package.zip -d /var/www/html/mysite.com

Для других форматов:

root@webserver:~# tar -xvf file.tar.bz2 -C /var/www/html/mysite.com
root@webserver:~# tar -xvf file.tar.gz -C /var/www/html/mysite.com

После чего изменим владельца каталога и назначим необходимые права на файлы и папки.

Если используется LAMP:

root@webserver:~# chown -R www-data:www-data /var/www/html/mysite.com

Если используется LEMP:

root@webserver:~# chown -R nginx:nginx /var/www/html/mysite.com

Разрешения на каталоги:

root@webserver:~# find /var/www/html/mysite.com -type d -exec chmod 755 {} ;

Разрешения на файлы:

root@webserver:~# find /var/www/html/mysite.com -type f -exec chmod 644 {} ;

Проведем настройки виртуального хоста в конфигурационном файле веб-сервера.

Для Apache2:

Ubuntu/Debian:

root@webserver:~# nano /etc/apache2/sites-enabled/000-mysite.com.conf

CentOS:

root@webserver:~# nano /etc/httpd/conf.d/joomla.conf
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/mysite.com
ServerName mysite.com
ServerAlias www.mysite.com
DirectoryIndex index.php index.html
DirectorySlash off
RewriteEngine on
RewriteBase /
AllowOverride all

Перезапустим Apache2:

Ubuntu/Debian:

root@webserver:~# service apache2 restart

CentOS:

root@webserver:~# service httpd restart

Для Nginx:

root@webserver:~# nano /etc/nginx/sites-enabled/test.com
server {
listen 80;
listen [::]:80;
root /var/www/html/mysite.com;
index index.php index.html index.htm;
server_name mysite.com www.mysite.com;
location / {
try_files $uri $uri/ =404;
}
}

Перезапустим Nginx:

root@webserver:~# service nginx restart

Переименуем файл htaccess.txt:

root@webserver:~# mv /var/www/html/mysite.com/htaccess.txt /var/www/html/mysite.com/.htaccess

Теперь вы можете перейти на ваш сайт http://mysite.com, где будет запущен графический установщик CMS Joomla. Согласно инструкциям завершаем установку Joomla.