Настройка виртуальных хостов NGINX в CentOS / RHEL
Для управления индивидуальными настройками отдельных сайтов, NGINX использует блоки server, которые принято называть виртуальными хостами (как в Apache). Виртуальные хосты позволяют размещать несколько сайтов с разными конфигурациями на одном веб сервере.
Скрипт позволяющий автоматизировать процесс добавления сайтов:
#!/bin/bash
read -p "Please enter your domain: " domain
echo "Make directories..."
if [ -e /etc/nginx/sites-available ];
then
echo "Directory /etc/nginx/sites-available exist..."
else
mkdir /etc/nginx/{sites-available,sites-enabled}
fi
mkdir -p /var/www/$domain/{bak,log,ssl,web}
echo "Creating virtual host file for $domain"
cat <<EOT > /etc/nginx/sites-available/$domain.conf
server {
listen 80;
server_name $domain;
location / {
root /var/www/$domain/web;
autoindex on;
}
location = /robots.txt {
log_not_found off;
access_log off;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /apple-touch-icon.png {
log_not_found off;
access_log off;
}
location = /apple-touch-icon-precomposed.png {
log_not_found off;
access_log off;
}
error_log /var/www/$domain/log/error.log error;
access_log /var/www/$domain/log/access.log;
}
EOT
echo "Creating a symbolic link..."
ln -s /etc/nginx/sites-available/$domain.conf /etc/nginx/sites-enabled/
echo "Restarting nginx.service"
systemctl restart nginx
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Салом, можно ещё создать файл в /etc/nginx/proxy_params, a потом добавить туда следующие строки:
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
после просто подключить в конфиге nginx:
proxy_pass https://your_backend;
include proxy_params;
на Ubuntu такой файл уже существует можно просто подключить
Можно ещё так:
1. Создаем отдельную сеть для наших контейнеров
docker network create zbx-net
2. Указываем сеть по умолчанию в docker-compose.yml
networks:
default:
name: zbx-net
external: true
Спасибо за отзыв, написал отдельную статью по установке и настройке Ansible
certbot certonly --force-renew -d newsite.com