Запуск сайта на сервере Ubuntu 22.04 с использованием стека Nginx, MySQL и PHP-FPM
Запуск сайта на Linux, что нужно для старта веб-сервера?
В современном мире веб-разработки построение и развертывание веб-сайтов является ключевой задачей для разработчиков и системных администраторов. Существует множество технологий и стеков, которые можно использовать для этой цели, но одним из наиболее популярных и эффективных является стек, состоящий из Nginx в качестве веб-сервера, MySQL как системы управления базами данных и PHP-FPM для обработки PHP-скриптов.
В данной статье мы подробно рассмотрим процесс настройки этого стека на сервере с операционной системой Ubuntu 22.04, шаг за шагом пройдемся по всем необходимым процедурам, начиная от установки необходимого программного обеспечения до тестирования конфигурации.
Процедура настройки стека Nginx, MySQL и PHP-FPM на Ubuntu 22.04
Шаг 1: Обновление системы
Перед началом работы важно убедиться, что все существующие пакеты системы обновлены до последних версий. Это обеспечивает безопасность и стабильность системы.
Обновите список пакетов и установите последние версии пакетов:
sudo apt update sudo apt upgrade -y
Шаг 2: Установка Nginx
Nginx – это высокопроизводительный веб-сервер, который также может быть использован в качестве обратного прокси-сервера. Установка Nginx на Ubuntu производится через стандартный менеджер пакетов apt
.
Установите Nginx:
sudo apt install nginx -y
Проверьте статус Nginx, чтобы убедиться, что он запущен:
sudo systemctl status nginx
Настройте брандмауэр UFW для разрешения трафика на веб-сервер:
sudo ufw allow 'Nginx Full'
Шаг 3: Установка MySQL
MySQL – популярная система управления базами данных, которая обеспечивает хранение и обработку данных вашего сайта. После установки MySQL необходимо выполнить первоначальную настройку безопасности.
Установите MySQL Server:
sudo apt install mysql-server -y
Запустите скрипт безопасности для настройки параметров безопасности MySQL:
sudo mysql_secure_installation
Следуйте инструкциям на экране, чтобы настроить безопасность вашей базы данных.
Шаг 4: Установка PHP и PHP-FPM
PHP-FPM (FastCGI Process Manager) – это реализация PHP FastCGI, которая обеспечивает высокую производительность обработки PHP-скриптов. Установка PHP и PHP-FPM позволяет Nginx корректно обрабатывать PHP-файлы.
Установите PHP и PHP-FPM, а также расширение PHP для работы с MySQL:
sudo apt install php-fpm php-mysql -y
После установки PHP-FPM будет автоматически запущен и включен в автозагрузку.
Шаг 5: Настройка Nginx для работы с PHP-FPM
После установки всех компонентов необходимо правильно настроить Nginx, чтобы он мог перенаправлять запросы для PHP-файлов к PHP-FPM для их обработки.
Создайте конфигурационный файл для вашего сайта в /etc/nginx/sites-available/
и создайте символическую ссылку на него в /etc/nginx/sites-enabled/
для активации.
Ниже пример конфигурации для сайта:
server {
listen 80;
server_name your_domain.com www.your_domain.com;
root /var/www/your_domain;
index index.php index.html index.htm;
location / { try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Замените your_domain.com
на ваш домен и /var/www/your_domain
на путь к директории вашего сайта. Убедитесь, что версия PHP в строке fastcgi_pass
соответствует установленной на вашем сервере.
Удалите или переименуйте дефолтный конфиг Nginx и создайте символическую ссылку для вашего сайта:
sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/
Проверьте конфигурацию Nginx на наличие ошибок:
sudo nginx -t
Перезагрузите Nginx для применения изменений:
sudo systemctl reload nginx
Шаг 6: Тестирование PHP через Nginx
Важным шагом является тестирование настроенной конфигурации, чтобы убедиться, что все компоненты работают корректно и ваш сайт доступен для пользователей.
Создайте файл info.php
в корневой директории вашего сайта (/var/www/your_domain/
) для тестирования PHP:
<?php phpinfo(); ?>
Откройте этот файл в браузере, перейдя по адресу http://your_domain.com/info.php
. Если все настроено правильно, вы увидите страницу с информацией о конфигурации PHP.
После проверки не забудьте удалить файл info.php
из соображений безопасности.
Настройка стека Nginx, MySQL и PHP-FPM на сервере Ubuntu 22.04 требует внимательности и последовательного выполнения всех шагов. Этот процесс может показаться сложным на первый взгляд, однако он предоставляет мощную и гибкую основу для развертывания веб-сайтов и приложений. Следуя приведенным инструкциям, вы сможете успешно настроить свой сервер и обеспечить надежную и эффективную работу вашего сайта. Важно помнить о безопасности и регулярно обновлять все компоненты системы, чтобы предотвратить возможные уязвимости.
Еще больше материала вы можете найти на нашем канале Дзен или подпишитесь на наш ТГ канал.
Вся информация, размещенная на веб-сайте https://writeon.ru/, охраняется в соответствии с законодательством РФ об авторском праве и международными соглашениями и не подлежит использованию кем-либо в какой бы то ни было форме, в том числе воспроизведению, распространению, переработке не иначе как с письменного разрешения автора.