Термин LEMP является аббревиатурой от названий его четырех компонентов с открытым исходным кодом:
- L — операционная система Linux
- E — Nginx [engine x] HTTP и обратный прокси- сервер.
- M — система управления реляционными базами данных MySQL или MariaDB
- P — язык программирования PHP.
Эта серия руководств покажет вам, как установить Nginx, сгенерировать бесплатный SSL-сертификат Let’s Encrypt, установить и защитить MySQL и установить PHP 7.
Подробные руководства, которые являются частью этой серии, перечислены в конце этой страницы.
Если вы спешите и не хотите читать более подробную документацию, вы можете установить LEMP Stack на свой сервер CentOS 7, следуя нашему разделу Quickstart.
Содержание
Установите LEMP Stack в CentOS 7 [Быстрый старт]
Это краткое руководство покажет вам основные шаги, необходимые для установки стека LEMP на сервере CentOS 7.
Предпосылки
Пользователь, под которым вы вошли в систему, должен иметь права sudo, чтобы иметь возможность устанавливать пакеты.
Шаг 1. Установка Nginx
Nginx недоступен в репозитории CentOS 7 по умолчанию, поэтому мы будем использовать репозитории EPEL. Чтобы добавить репозиторий EPEL в вашу систему, используйте следующую команду:
sudo yum install epel-release
Теперь, когда репозиторий EPEL включен, установите пакет Nginx с помощью:
sudo yum install nginx
После установки запустите и включите службу Nginx, набрав:
sudo systemctl start nginx
sudo systemctl enable nginx
Шаг 2. Установка MariaDB
Следующим шагом является установка пакетов MariaDB. Для этого введите:
sudo yum install mariadb-server
После установки сервера MariaDB запустите и включите службу с помощью:
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Шаг 3. Установка PHP
CentOS 7 поставляется с версией PHP 5.4, которая в течение некоторого времени является EOL-ed, поэтому мы будем использовать репозиторий Remi для установки PHP 7.2.
Выполните следующую команду, чтобы добавить репозиторий Remi в вашу систему:
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
После добавления установите пакет yum-utils
и включите репозиторий remi-php72
:
sudo yum install yum-utils
sudo yum-config-manager --enable remi-php72
Теперь, когда у нас включен репозиторий Remi, мы можем установить PHP FPM и несколько наиболее распространенных модулей PHP с помощью:
sudo yum install php-fpm php-opcache php-cli php-gd php-curl php-mysql
По умолчанию PHP FPM запускается как пользовательский apache
на порту 9000. Мы изменим пользователя на nginx
и переключимся с сокета TCP на сокет Unix. Для этого отредактируйте строки, выделенные желтым:
sudo nano /etc/php-fpm.d/www.conf
... user = nginx ... group = nginx ... listen = /run/php-fpm/www.sock ... listen.owner = nginx listen.group = nginx
Убедитесь, что каталог /var/lib/php
имеет правильные разрешения:
chown -R root:nginx /var/lib/php
Сохраните файл, включите и запустите службу PHP FPM с помощью:
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
Шаг 4. Настройка Nginx для обработки страниц PHP
Теперь, когда у нас установлены все компоненты LEMP, мы можем отредактировать файл конфигурации блока сервера Nginx и добавить следующие строки, чтобы Nginx мог обрабатывать файлы PHP:
server { # other code location ~ .php$ { try_files $uri = 404 ; fastcgi_pass unix:/run/php-fpm/www.sock ; fastcgi_index index.php ; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; include fastcgi_params ; } }
Не забудьте перезапустить сервис Nginx, чтобы изменения вступили в силу:
sudo systemctl restart nginx
Больше информации
Более подробные инструкции по каждому шагу см. В следующих руководствах.
Учебники
- Как установить Nginx на CentOS 7
- Защитите Nginx с помощью Let’s Encrypt на CentOS 7
- Установите MariaDB на CentOS 7
- Установите PHP 7 на CentOS 7
- Как настроить серверные блоки Nginx на CentOS 7