### Установка и настройка LEMP-стека (Nginx + PHP 8.3 + MariaDB) --- #### **Назначение скрипта** Автоматическая установка и настройка LEMP-стека для Debian/Ubuntu систем, включая: - Nginx (прокси на Apache) - PHP-FPM 8.3 с оптимизированными настройками - MariaDB (база данных) - Redis (кеширование) - LibreOffice и Java (для дополнительных задач) --- #### **Поддерживаемые системы** - Debian-based (Debian 10+, Ubuntu 20.04+) --- #### **Особенности конфигурации** 1. **Структура серверов**: - Nginx → слушает порт `80`, проксирует запросы → Apache на порт `8080` - Apache → обрабатывает PHP через PHP-FPM 8.3 2. **Безопасность**: - Удаление анонимных пользователей и тестовой БД в MariaDB - Пароль root-пользователя БД: `muJh9tNY8sg0` 3. **Оптимизации PHP**: - Увеличены лимиты: `upload_max_filesize=64M`, `memory_limit=256M` - Включен и настроен OPcache 4. **Веб-интерфейс**: - Автоматически генерируется статус-страница по адресу `/index.php` --- #### **Запуск скрипта** ```bash sudo chmod +x install.sh sudo ./install.sh ``` --- #### **Что будет установлено** | Компонент | Версия/Настройка | |-----------------|--------------------------------------| | **Nginx** | Основной веб-сервер (порт 80) | | **Apache** | Обработчик PHP (порт 8080) | | **PHP-FPM** | 8.3 + расширения (gd, opcache и др.) | | **MariaDB** | Пароль root: `muJh9tNY8sg0` | | **База данных** | `ALTCor` (utf8mb4) | | **Redis** | Сервер кеширования | | **LibreOffice** | Для работы с документами | | **Java** | JRE (default-jre) | --- #### **Проверка установки** 1. Откройте в браузере: ``` http://localhost/ http://ВАШ_IP_СЕРВЕРА/ ``` 2. Статус-страница покажет: - Версию PHP (должна быть 8.3+) - Подключение к базе данных - Состояние OPcache - Список активных расширений PHP - Информацию о Java и LibreOffice --- #### **Ручные действия после установки** 1. **Смените пароль root MariaDB**: ```bash sudo mysql -u root -p'muJh9tNY8sg0' ALTER USER 'root'@'localhost' IDENTIFIED BY 'новый_пароль'; ``` 2. **Обновите `db_config.php`**: ```bash nano /var/www/html/db_config.php ``` --- #### **Возможные проблемы** 1. **Ошибка запуска**: ```bash ОШИБКА: Ваш дистрибутив '...' не поддерживается ``` **Решение**: Только Debian/Ubuntu. 2. **Службы не стартовали**: ```bash sudo systemctl restart apache2 nginx php8.3-fpm mariadb sudo journalctl -xe # для просмотра логов ``` 3. **PHP 8.3 не установился**: Убедитесь, что система обновлена: ```bash sudo apt update && sudo apt upgrade -y ``` --- #### **Директории и файлы** | Путь | Назначение | |-------------------------------|-------------------------------------| | `/var/www/html/` | Корневая веб-директория | | `/var/www/html/index.php` | Статус-страница | | `/var/www/html/db_config.php` | Конфиг БД (логин/пароль) | | `/etc/nginx/sites-available/default` | Конфиг Nginx (прокси на Apache) | | `/etc/apache2/sites-available/000-default.conf` | Конфиг Apache | --- #### **Активные службы** ```bash systemctl status apache2 nginx php8.3-fpm mariadb redis-server ```