Поиск по сайту:

Как установить Joomla с Apache и бесплатным Lets Encrypt SSL на Alma Linux 8


На этой странице

  1. Предпосылки
  2. Установить сервер LAMP
  3. Настройка базы данных MariaDB
  4. Загрузить CMS Joomla
  5. Настройка Apache для Joomla
  6. Настройка брандмауэра для Joomla
  7. Доступ к мастеру веб-установки Joomla
  8. Защита CMS Joomla с помощью Lets Encrypt SSL
  9. Заключение

Joomla — бесплатная, с открытым исходным кодом и одна из самых популярных систем управления контентом. Он написан на PHP и используется для создания веб-сайтов и блогов без каких-либо знаний в области программирования. Он предоставляет бесплатные и платные плагины и темы, которые помогут вам расширить функциональность сайта. Он предоставляет инициативную панель управления для управления веб-сайтами из веб-браузера. Joomla предоставляет очень полезные функции, включая многоязычную поддержку, медиа-менеджер, SEO, интегрированную справочную систему, управление контактами и многое другое.

В этом руководстве вы узнаете, как установить Joomla CMS с Apache и Lets Encrypt SSL на Alma Linux 8.

Предпосылки

  • Сервер под управлением Alma Linux 8.
  • Действительное доменное имя, указанное с IP-адресом вашего сервера.
  • На сервере настроен пароль root.

Установить LAMP-сервер

Joomla работает на веб-сервере, написанном на PHP, и использует MariaDB в качестве базы данных. Поэтому вам нужно будет установить сервер LAMP в вашей системе. Вы можете установить его с помощью следующей команды:

dnf install httpd @mariadb php php-curl php-xml php-zip php-mysqlnd php-intl php-gd php-json php-ldap php-mbstring php-opcache unzip curl wget -y

После завершения установки отредактируйте файл конфигурации PHP и измените настройки по умолчанию:

nano /etc/php.ini

Измените следующие строки:

memory_limit = 256M
output_buffering = Off
max_execution_time = 300
date.timezone = UTC

Сохраните и закройте файл, затем запустите службу Apache и разрешите ее запуск после перезагрузки системы:

systemctl start httpd mariadb
systemctl enable httpd mariadb

Настроить базу данных MariaDB

Далее вам нужно будет создать базу данных и пользователя для CMS Joomla. Сначала подключитесь к оболочке MariaDB с помощью следующей команды:

mysql

После входа в систему создайте базу данных и пользователя с помощью следующей команды:

MariaDB [(none)]> CREATE DATABASE joomla;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON joomla.* TO 'joomla'@'localhost' IDENTIFIED BY "securepassword";

Затем перезагрузите привилегии, чтобы применить изменения:

MariaDB [(none)]> FLUSH PRIVILEGES;

Затем выйдите из оболочки MariaDB с помощью следующей команды:

MariaDB [(none)]> EXIT;

Как только вы закончите, вы можете перейти к следующему шагу.

Скачать CMS Joomla

На момент написания этого руководства последней доступной версией была Joomla 4.1.2. Вы можете загрузить его с официальной страницы загрузки с помощью следующей команды:

wget https://downloads.joomla.org/cms/joomla4/4-1-2/Joomla_4-1-2-Stable-Full_Package.zip?format=zip -O joomla.zip

После завершения загрузки разархивируйте загруженный файл в корневой веб-каталог Apache с помощью следующей команды:

unzip joomla.zip -d /var/www/html/joomla

Затем измените владельца и права доступа к каталогу Joomla:

chown -R apache:apache /var/www/html/joomla/
chmod -R 775 /var/www/html/joomla/

Как только вы закончите, вы можете перейти к следующему шагу.

Настроить Apache для Joomla

Далее вам нужно будет создать файл конфигурации виртуального хоста Apache для Joomla. Вы можете создать его с помощью следующей команды:

nano /etc/httpd/conf.d/joomla.conf

Добавьте следующие коды:

<VirtualHost *:80>
   ServerAdmin 
   DocumentRoot "/var/www/html/joomla"
   ServerName joomla.example.com
   ErrorLog "/var/log/httpd/example.com-error_log"
   CustomLog "/var/log/httpd/example.com-access_log" combined

<Directory "/var/www/html/joomla">
   DirectoryIndex index.html index.php
   Options FollowSymLinks
   AllowOverride All
   Require all granted
</Directory>
</VirtualHost>

Сохраните и закройте файл, затем перезапустите службу Apache, чтобы применить изменения конфигурации:

systemctl restart httpd

Теперь вы можете проверить состояние веб-сервера Apache с помощью следующей команды:

systemctl status httpd

Вы получите следующий вывод:

? httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/httpd.service.d
           ??php-fpm.conf
   Active: active (running) since Fri 2022-04-15 08:52:59 UTC; 3s ago
     Docs: man:httpd.service(8)
 Main PID: 4749 (httpd)
   Status: "Started, listening on: port 80"
    Tasks: 213 (limit: 11412)
   Memory: 24.3M
   CGroup: /system.slice/httpd.service
           ??4749 /usr/sbin/httpd -DFOREGROUND
           ??4751 /usr/sbin/httpd -DFOREGROUND
           ??4752 /usr/sbin/httpd -DFOREGROUND
           ??4753 /usr/sbin/httpd -DFOREGROUND
           ??4754 /usr/sbin/httpd -DFOREGROUND

Apr 15 08:52:59 linux systemd[1]: httpd.service: Succeeded.
Apr 15 08:52:59 linux systemd[1]: Stopped The Apache HTTP Server.
Apr 15 08:52:59 linux systemd[1]: Starting The Apache HTTP Server...

Когда вы закончите настройку Apache, вы можете перейти к следующему шагу.

Настройка брандмауэра для Joomla

Затем вам нужно будет разрешить службы HTTP и HTTPS через брандмауэр. Вы можете разрешить их с помощью следующей команды:

firewall-cmd --add-service=http --zone=public --permanent 
firewall-cmd --add-service=https --zone=public --permanent

Затем перезагрузите firewalld, чтобы применить изменения:

firewall-cmd --reload

Доступ к мастеру веб-установки Joomla

Теперь откройте веб-браузер и получите доступ к установке Joomla, используя URL-адрес http://joomla.example.com. Вы будете перенаправлены на следующий экран:

Выберите свой язык, укажите имя своего веб-сайта, затем нажмите «Настроить данные для входа». Вы должны увидеть экран конфигурации администратора:

Укажите имя пользователя и пароль администратора и нажмите «Настройка подключения к базе данных». Вы должны увидеть следующий экран:

Укажите имя базы данных, имя пользователя, пароль и нажмите кнопку «Установить Joomla». После установки Joomla вы должны увидеть следующий экран:

Нажмите кнопку Открыть администратора. Вы должны увидеть экран входа в Joomla:

Введите имя пользователя и пароль администратора и нажмите кнопку «Войти». Вы должны увидеть панель инструментов Joomla на следующем экране:

Защитите CMS Joomla с помощью Lets Encrypt SSL

Затем вам нужно будет установить клиент Certbot, чтобы установить Lets Encrypt SSL для вашего веб-сайта. Вы можете установить его с помощью следующей команды:

dnf install epel-release -y
dnf install certbot python3-certbot-apache

Затем получите и установите SSL-сертификат для вашего домена lets с помощью следующей команды:

certbot --apache -d joomla.example.com

Вам будет предложено указать свой адрес электронной почты и принять условия обслуживания:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices)
 (Enter 'c' to cancel): 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.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: Y
Account registered.
Requesting a certificate for joomla.example.com
Performing the following challenges:
http-01 challenge for joomla.example.com
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/httpd/conf.d/joomla.conf
Redirecting all traffic on port 80 to ssl in /etc/httpd/conf.d/joomla.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://joomla.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Subscribe to the EFF mailing list (email: ).


IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/joomla.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/joomla.example.com/privkey.pem
   Your certificate will expire on 2022-07-09. To obtain a new or
   tweaked version of this certificate in the future, simply run
   certbot again with the "certonly" option. To non-interactively
   renew *all* of your certificates, run "certbot renew"
 - 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

Заключение

Поздравляем! Вы успешно установили Joomla CMS с Apache и Lets Encrypt SSL на Alma Linux 8. Используя замечательную Joomla CMS, вы теперь можете создать свой собственный веб-сайт без каких-либо знаний в области программирования или кодирования. Пожалуйста, не стесняйтесь спрашивать, если у вас есть какие-либо вопросы.