120 lines
4.4 KiB
Markdown
120 lines
4.4 KiB
Markdown
### Установка и настройка 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
|
||
``` |