Полный цикл в digital

Создание виртуального хоста Nginx

При использовании веб-сервера Nginx вы можете использовать блоки сервера (аналогичные виртуальным хостам в Apache) для инкапсуляции данных конфигурации и размещения на одном сервере нескольких доменов.

По умолчанию включен один серверный блок, настроенный для вывода документов из директории /var/www/html.

Для обслуживания этого контента Nginx необходимо создать серверный блок с правильными директивами. Вместо того чтобы изменять файл конфигурации по умолчанию напрямую, мы создадим новый файл в директории /etc/nginx/sites-available/название_домена.com.

Скопируйте файл для домена:

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/название_домена.com

Откройте новый файл в редакторе с привилегиями root:

sudo nano /etc/nginx/sites-available/название_домена.com

Удаляем все что есть и пишем следующий блок конфигурации, который похож на заданный по умолчанию, но обновлен с учетом новой директории, доменного имени, проксирования запросов:

server {
# слушаем порт 80
listen 80;
# список доменов + поддоменов которые будет обрабатывать виртуальный хост
server_name название_домена.com www.название_домена.com;
# 301 редирект на протокол https (порт 443)
return 301 https://название_домена.com$request_uri;
}

server {
# слушаем порт 443
listen 443 ssl http2;
# директория сайта
root /var/www/название_домена.com/public_html;
# порядок обработки расширений
index index.php index.html;
# список доменов + поддоменов которые будет обрабатывать виртуальный хост
server_name название_домена.com www.название_домена.com;
# расширения которые обрабатывает  Nginx
location ~* ^.+.(js|css|png|jpg|jpeg|gif|ico|woff|woff2|swf|ttf|svg|html|txt)$ {
root   /var/www/название_домена.com/public_html;
}
# все что не попало в расширения для обработки Nginx, идет па Apahe
location / {
proxy_set_header X-Real-IP  $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:8080;
}
# закрываем доступ к файлам .htaccess
location ~ /\.ht {
deny all;
}
}

Активируем файл создав ссылку в директории sites-enabled, который Nginx считывает при запуске:

sudo ln -s /etc/nginx/sites-available/название_домена.com /etc/nginx/sites-enabled/

Отключим файл конфигурации по умолчанию от /sites-enabled/:

sudo unlink /etc/nginx/sites-enabled/default

Убедимся в отсутствии ошибок синтаксиса в файлах Nginx:

sudo nginx -t

Для корректной установки Apache необходимо временно отключить Nginx, так как по умолчанию они оба работают на 80 порту:

sudo systemctl stop nginx

Проверяем статус службу Nginx:

sudo systemctl status nginx
Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг