Назад к вопросам
Junior — Middle
79
Можно ли запускать несколько веб-сайтов на одном порту с использованием Nginx?
Компании, где спрашивали
almaservices.ru
Ответ от нейросети
sobes.tech AI
Нельзя запустить несколько веб-сайтов на одном и том же порту напрямую, так как порт — это уникальный идентификатор для сетевого соединения. Однако с помощью Nginx можно настроить виртуальные хосты (server blocks), которые позволяют обслуживать несколько сайтов на одном IP и порту (обычно 80 для HTTP или 443 для HTTPS).
Это достигается за счёт различия по имени хоста (Host header в HTTP-запросе). Nginx анализирует заголовок запроса и перенаправляет на соответствующий сайт.
Пример конфигурации для двух сайтов на одном порту 80:
server {
listen 80;
server_name site1.example.com;
root /var/www/site1;
}
server {
listen 80;
server_name site2.example.com;
root /var/www/site2;
}
Таким образом, несколько сайтов работают на одном порту, но различаются по доменному имени.