Sobes.tech
Назад к вопросам
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;
}

Таким образом, несколько сайтов работают на одном порту, но различаются по доменному имени.