Ставим Joomla на Linux, на Virtualbox.
Подключать мо можно с любого компьютера по локалке.
Задаем статический адрес
$ sudo nano /etc/network/interfaces
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto enp0s3
allow-hotplug enp0s3
iface enp0s3 inet static
address 192.168.0.252
netmask 255.255.254.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.254
Если домена нет, то его можно имитировать
$ sudo nano /etc/hosts
127.0.0.1 localhost
192.168.0.252 mydomen.ru
$ sudo reboot
Ставим пакеты
$ sudo apt update && sudo apt upgrade
$ sudo apt install apache2 mariadb-server -y libapache2-mod-php openssl php-imagick php-gd php-imap php-intl php-json php-mbstring php-mysql php-pgsql php-ssh2 php-sqlite3 php-xml php-zip phpmyadmin -y
Настройка PHP
$ sudo nano /etc/php/8.2/apache2/php.ini
output_buffering = Off
max_execution_time = 60
memory_limit = 2048M
post_max_size = 64M
upload_max_filesize = 64M
upload_tmp_dir = "/var/www/html/tmp"
Настройка MariaDB
Меняем пароль root для SQL и отвечаем Y на вопросы
$ sudo mariadb-secure-installation
Создаем базу и пользователя для подключения joomla к ней
$ sudo mariadb -u root -p
CREATE DATABASE joomladb;
CREATE USER joomla@localhost IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON joomladb.* TO joomla@localhost;
FLUSH PRIVILEGES;
exit;
Загружаем joomla
$ cd /home/user/Загрузки
$ wget https://github.com/joomla/joomla-cms/releases/download/4.4.5/Joomla_4.4.5-Stable-Full_Package.zip
$ sudo mkdir -p /var/www/html/joomla
$ sudo unzip Joomla_4.4.5-Stable-Full_Package.zip -d /var/www/html/joomla
$ sudo chown -R www-data:www-data /var/www/html/joomla
$ sudo chmod -R 755 /var/www/html/joomla
Настройка Apache для Joomla
$ sudo nano /etc/apache2/sites-available/joomla.conf
# добавляем
<VirtualHost *:80>
ServerAdmin
ServerName mydomen.ru
DocumentRoot /var/www/html/joomla
<Directory /var/www/html/joomla/>
Options FollowSymlinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/mydomen.ru_error.log
CustomLog ${APACHE_LOG_DIR}/mydomen.ru_access.log combined
</VirtualHost>
Так как настоящего домена нет, подправим конфиг Апача
$ sudo nano /etc/apache2/apache2.conf
# добавляем
ServerName localhost
Конфигурируем Joomla
$ sudo a2ensite joomla.conf
Включаем модуль RewriteRule в Apache
$ sudo a2enmod rewrite
Тестируем Apache
$ sudo apachectl configtest
$ sudo systemctl restart apache2
Сайт готов, заходим и настраиваем его
Создадим временную папку tmp вне сайта и подключим ее
$ sudo mkdir -p /var/www/html/tmp
$ sudo chown -R www-data:www-data /var/www/html/tmp
$ sudo chmod -R 777 /var/www/html/tmp
Включаем .htaccess — это дополнительный конфигурационный (служебный) файл.
В файле .htaccess можно задать некоторые серверные настройки Apache для конкретного сайта или отдельной папки.
$ sudo mv /var/www/html/joomla/htaccess.txt /var/www/html/joomla/.htaccess
Компонент комментариев CComment