Как установить Joomla на Almalinux 10
Дата публикации: 2025-10-10T10:01:52
Теги: ["Joomla", "Almalinux"]
Joomla - одна из самых популярных CMS. Первоначально он был выпущен в 2005 году в качестве альтернативы WordPress. Эта CMS может быть лучше подходит для более опытных пользователей веб-сайта, потому что она более гибкая как в задней, так и в передней части. В отличие от WordPress, Joomla имеет более мощный инструментарий дизайна и подходит для опытных пользователей, чтобы максимально использовать свои функции. Это очень гибко, позволяя пользователям создавать различные типы веб-сайтов, включая личные, бизнес, электронную коммерцию и другие веб-сайты. В этой статье я покажу вам, как установить Joomla на AlmaLinux 10.
Предпосылки
- Сервер под управлением AlmaLinux 10 или любой другой ОС Linux.
- Привилегии пользователя: пользователь root или не root с привилегиями sudo.
Конвенции
# — данные команды должны выполняться с правами root либо непосредственно от имени пользователя root, либо с помощью команды sudo. $ – данные команды должны выполняться от имени обычного пользователя.
Шаг 1. Обновите систему
Мы предполагаем, что у вас установлена новая версия AlmaLinux 10. Нам необходимо обновить системные пакеты до последних доступных версий. Для этого выполните следующие команды:
$ sudo dnf update -y && sudo dnf upgrade -y
Шаг 2. Установите PHP
В этой статье мы установим Joomla 5.3, которая требует по крайней мере PHP 8.1. AlmaLinux 10 поставляется с PHP 8.3, поэтому мы можем просто установить PHP и необходимые расширения для установки Joomla.
$ sudo dnf install php-{bcmath,common,cli,curl,fpm,gd,json,intl,mbstring,mysqlnd,pear,simplexml,soap,xml,zip,zlib}
После установки мы можем запустить службу PHP-FPM.
$ sudo systemctl enable --now php-fpm
Во-первых, нам нужно отключить вывод `PHP_buffering`.
$ sudo nano /etc/php.ini
В этом файле найдите `output_buffering = 4096`, затем замените его на `output_buffering = off`
Сохраните файл, затем выйдите из редактора.
Теперь мы создадим PHP-FPM pool для нашего веб-сайта Joomla.
$ sudo nano /etc/php-fpm.d/joomla.conf
Вставьте следующее в файл.
[joomla] user = nginx group = nginx listen = /run/php-fpm/joomla.sock listen.acl_users = apache,nginx listen.owner = nginx listen.group = nginx pm = ondemand pm.max_children = 50 pm.process_idle_timeout = 5s
Сохраните файл, затем выйдите из редактора. Нам нужно перезапустить PHP-FPM, чтобы применить изменения.
$ sudo systemctl restart php-fpm
Шаг 3. Установка и настройка Nginx
Nginx - это быстрый и безопасный, один из самых популярных и широко используемых веб-серверов в мире. На этом этапе мы собираемся установить Nginx как веб-сервер, необходимый для Joomla на AlmaLinux 10.
$ sudo dnf install nginx -y
Nginx не работает автоматически при установке. После установки мы можем запустить службу Nginx.
$ sudo systemctl enable --now nginx
Затем, давайте создадим серверный блок nginx или виртуальный хост.
$ sudo nano /etc/nginx/conf.d/joomla.example.com.conf
Вставить следующее в файл:
upstream php-handler {
server unix:/run/php-fpm/joomla.sock;
}
server {
listen 80;
server_name joomla.example.com;
root /var/www/html/joomla;
index index.php;
server_tokens off;
access_log /var/log/nginx/joomla_access.log;
error_log /var/log/nginx/joomla_error.log;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
try_files $uri =404;
include /etc/nginx/fastcgi_params;
fastcgi_read_timeout 3600s;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 128k;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass php-handler;
fastcgi_index index.php;
}
}
Сохраните файл, затем выйдите из редактора.. Теперь мы можем перезапустить сервис Nginx, чтобы применить изменения.
$ sudo systemctl restart nginx
Шаг 4. Установка MariaDB
Есть несколько систем баз данных, которые мы можем использовать для установки Joomla. Joomla поддерживает сервер MySQL версии 8.0+ или эквивалентный сервер MariaDB, и PostgreSQL. Поскольку AlmaLinux поставляется с MariaDB 10.11, мы будем устанавливать и использовать его. Установим его из хранилища AlmaLinux 10 по умолчанию, чтобы облегчить установку Joomla.
$ sudo dnf install mariadb-server
После установки, MariaDB не начнет автоматически. Мы должны выполнить команду ниже, чтобы начать ее сейчас и позволить ей начинать каждый раз, когда сервер перезагружается.
$ sudo systemctl enable --now mariadb
Теперь мы можем приступить к созданию новой базы данных и базы данных пользователя.
$ sudo mysql
После того, как мы вошли в оболочку MySQL, мы можем выполнить следующие команды. Вы можете заменить `YourStrongPasswordHere` более сильным паролем.
mysql> CREATE DATABASE joomla_db; mysql> GRANT ALL on joomla_db.* to joomla_user@localhost IDENTIFIED BY 'YourStrongPasswordHere'; mysql> FLUSH PRIVILEGES; mysql> \q
Это связало его, пользователь базы данных и имя были созданы.
Шаг 5. Установите SSL-сертификат
Мы установим бесплатный SSL-сертификат от Let’s Encrypt с помощью certbot. Certbot - это инструмент ACME для создания SSL-сертификатов, предоставляемых Let’s Encrypt. Прежде чем создать новый SSL-сертификат для вашего joomla.example.com, убедитесь, что вы уже указали запись DNS домена/субдомена на ваш IP-адрес сервера.
$ sudo dnf install certbot python3-certbot-nginx -y
После установки вы можете запустить эту команду для выдачи SSL-сертификата. Опять же, убедитесь, что заменить субдомен вашим фактическим доменом или поддоменовым именем; он должен соответствовать тому, который находится в файле конфигурации блока nginx сервера, который мы создали ранее.
$ sudo certbot
Вам будет предложено несколько вопросов, и вы увидите такой выход:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): you@example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.5-February-24-2025.pdf. You must agree in order to register with the ACME server. Do you agree? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: y - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing, once your first certificate is successfully issued, to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: n Account registered. Which names would you like to activate HTTPS for? We recommend selecting either all domains, or all domains in a VirtualHost/server block. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: joomla.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate numbers separated by commas and/or spaces, or leave input blank to select all options shown (Enter 'c' to cancel): 1 Requesting a certificate for joomla.example.com Successfully received certificate. Certificate is saved at: /etc/letsencrypt/live/joomla.example.com/fullchain.pem Key is saved at: /etc/letsencrypt/live/joomla.example.com/privkey.pem This certificate expires on 2025-11-10. These files will be updated when the certificate renews. Certbot has set up a scheduled task to automatically renew this certificate in the background. Deploying certificate Successfully deployed certificate for joomla.example.com to /etc/nginx/conf.d/joomla.example.com.conf Congratulations! You have successfully enabled HTTPS on https://joomla.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - If you like Certbot, please consider supporting our work by: * Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate * Donating to EFF: https://eff.org/donate-le - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Если есть проблема при создании SSL-сертификата или Certbot не может генерировать сертификат, вполне вероятно, что обновление DNS не полностью распространяется.
Шаг 6. Установите Joomla
Наконец, мы можем продолжить установку Joomla. Во-первых, нам нужно загрузить архивный файл установки. Перейдите на их страницу
$ cd /tmp $ wget https://downloads.joomla.org/cms/joomla5/5-3-4/Joomla_5-3-4-Stable-Full_Package.zip?format=zip -O joomla.zip $ sudo unzip /tmp/joomla.zip -d /var/www/html/joomla $ sudo chown -R nginx: /var/www/html/joomla
Мы загрузили файл установки Joomla и довели его до каталога, настроенного как root документа нашего веб-сайта Joomla. Чтобы начать установку, выберите `https://joomla.example.com/`, используя любой веб-браузер.
На этом этапе вам нужно ввести имя вашего веб-сайта Joomla, например, `New Joomla Site`, а затем нажать на кнопку `Setup Login Data`, чтобы продолжить.
Теперь нам нужно создать супер администратора. Заполните требуемые поля на этом шаге, затем переходите к следующему шагу, нажав на `Setup Database Connection`
Затем вам нужно ввести данные базы данных, которые вы создали на шаге 4 выше, а затем, наконец, нажмите на кнопку `Install Joomla`.
Это всё объясняет. Joomla была установлена на `https://joomla.example.com/`, и вы можете зайти на сайт backend, нажав на кнопку `Open Administrator`. Вы будете доставлены на страницу входа администратора.
После регистрации вы будете в вашей панели Joomla, и вы можете продолжать настраивать свой сайт Joomla там.
Завершение
Поздравляю! Вы успешно завершили установку Joomla на AlmaLinux 10.
Если вам понравился этот пост, пожалуйста, поделитесь им со своими друзьями или оставьте комментарий ниже.