Вход
Русский
USD
Цены в иностранной валюте приведены информационно

Установка LEMP на Ubuntu Server 16.04

Linux+Nginx+MySQL+PHP

LEMP представляет собой набор серверного ПО. Он рименяется для отображения динамический приложений и веб-страниц. 

Установка LEMP


Обновляем все пакеты:
sudo apt-get update

Установка Nginx

Для установки веб-сервера Nginx выполняем:
sudo apt-get install nginx
На ОС Ubuntu 16.04 веб-сервер Nginx запускается автоматически после установки. Для проверки работоспособности веб-сервера перейдите через любой веб-браузер по адресу http://ip-сервера, должна отобразиться стандартная посадочная страница Nginx.

Установка PHP

В отличие от других веб-серверов, Nginx не поставляется с поддержкой PHP. Поэтому нужно установить php-fpm (fastCGI process manager).
sudo apt-get install php-fpm php-mysql
Переходим к конфигурации php:
sudo nano /etc/php/7.0/fpm/php.ini
Находим параметр cgi.fix_pathinfo; по умолчанию он закомментирован при помощи точки с запятой и имеет значение 1. Нужно раскомментировать параметр и изменить его значение на 0.
cgi.fix_pathinfo=0
Перезапускаем PHP:
sudo systemctl restart php7.0-fpm
Теперь нужно настроить взаимодействие Nginx и PHP. Редактируем виртуальный хост.
sudo nano /etc/nginx/sites-available/default
Стандартный блок Nginx выглядит так:
server {

listen 80 default_server;

listen [::]:80 default_server;

root /var/www/html;

index index.html index.htm index.nginx-debian.html;

server_name _;

location / {

try_files $uri $uri/ =404;

}

}

Добавляем index.php как первое значение директивы index для того, чтобы файлы index.php обслуживались первыми.
Редактируем значение директивы server_name. Указываем доменное имя или IP.
Для настройки обработки PHP раскомментируем сегмент файла, отвечающий за обслуживание запросов PHP. Это блок location ~\.php$, фрагмент fastcgi-php.conf и сокет для php-fpm.
Далее раскомментируем блок location для файлов .htaccess.
Учитывая внесенные изменения, файл имеет такой вид:

server {

listen 80 default_server;

listen [::]:80 default_server;

root /var/www/html;

index index.php index.html index.htm index.nginx-debian.html;

server_name server_domain_or_IP;

location / {

try_files $uri $uri/ =404;

}

location ~ \.php$ {

include snippets/fastcgi-php.conf;

fastcgi_pass unix:/run/php/php7.0-fpm.sock;

}

location ~ /\.ht {

deny all;

}

Сохраняем и проверяем конфигурационный файл на наличие ошибок.
sudo nginx -t
Исправляем ошибки, если имеются, и перезагружаем Nginx:
sudo systemctl reload nginx

Установка MySQL или MariaDB

Установка MySQL выполняется с помощью команды:
sudo apt-get install mysql-server mysql-client
Установка MariaDB выполняется с помощью команды:
sudo apt-get install mariadb-server mariadb-client
Во время установки нужно будет задать пароль для доступа к базам данных.

Тестирование установки

Теперь нужно убедится что веб-сервер обслуживает файлы php.
Создаем тестовый файл info.php в каталоге document root.
sudo nano /var/www/html/info.php
Вставьте в него код:

<?php

phpinfo();

Сохраняем и переходим через любой веб-браузер по адресу:
http://ip-сервера/info.php
На экране появится страница c информацией о сервере. Если такая страница появилась, Nginx обслуживает файлы PHP.
После обязательно удалите этот файл.
sudo rm /var/www/html/info.php

Опубликовано: Январь 23, 2017