Установка и настройка Nginx на сервер с SSL и PHP

Полная инструкция по установке Nginx на сервер: конфигурация, подключение PHP, активация SSL и проверка. Подходит для VPS и выделенных серверов.

Устанавливаем Nginx, выполнив следующую команду:

apt-get install nginx -y

Настройка Nginx

Переходим в sFTP по адресу /etc/nginx/sites-available и создаем файл server_name.conf (имя может быть любым), в который добавляем следующий текст, заменяя данные на свои:

server_name.conf
server {
    listen       *:80;
    server_name  u1host.com; # домен сайта
    client_max_body_size 1000M; # максимальный размер файла, переданного через сайт
    error_page 404 = @notfound;
    location / {
        root   /home/site/u1host; # путь до сайта
        try_files $uri $uri.html $uri/ @extensionless-php;
        index  index.html index.php;
    }
    # Подключения PHP, если не нужен, то стираем с 13 по 21 строку
    location ~ \.(php|html|htm)$ {
        try_files $uri =404;
        root   /home/site/u1host; # путь до сайта
        fastcgi_pass unix:/run/php/php7.0-fpm.sock; # путь до php 
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $request_filename;
        include /etc/nginx/fastcgi_params;
    }
}

Перезагружаем Nginx:

Подключение PHP к Nginx

PHP не является обязательным для работы с Nginx. Включайте этот блок только для сайтов, которым необходимо выполнение PHP-скриптов.

Выполним следующие команды последовательно:

Перезагружаем Nginx:

Включение SSL (протокол шифрования)

Является не обязательным пунктом, повышающим доверие к вашему сайту

Редактируем ранее созданный конфигурационный файл, приводя его к следующему виду:

Перезагружаем Nginx:

Проверка на Apache2

При одновременном использовании Nginx и Apache2 они будут конфликтовать за порт 80, что приведет к некорректной работе. Поэтому необходимо удалить один из веб-серверов.

Проверим наличие Apache2:

Если вы не увидите большое сообщение с информацией, значит Apache2 не установлен.

Для удаления Apache2 пропишем:

Удаление Nginx

Для удаления Nginx пропишем команду его остановки:

И далее команду для полного удаления Nginx:


Наши ресурсы

Telegram-канал: https://t.me/u1host U1HOST: https://u1host.com

Last updated