Назад | Перейти на главную страницу

Обслуживание разных безопасных сайтов на основе порта в одном домене с использованием nginx

Я хочу запустить несколько сайтов в одном домене, используя nginx, но на разных портах, и хочу, чтобы все они использовали SSL

Скажем,

У меня два сайта siteone.com и sitetwo в каталоге /var/www/ следующим образом:

/var/www/siteone.com/
/var/www/sitetwo/

Я хочу провести siteone.com на домене https://siteone.com и sitetwo в том же домене, но на другом порту, скажем https://siteone.com:8080

Примечание: имея SSL на обоих сайтах это важно.

Может показаться, что я здесь больше не занимаюсь инженерными делами, но я все еще хочу знать, возможно ли это сделать? я использую nginx веб сервер. Как бы выглядел мой файл конфигурации nginx?

Я пробовал использовать следующее, но это не сработало:

server {
  listen 443;
  server_name siteone.com;
  root /var/www/;

  # ssl stuff here
}

server {
  listen 8080;
  server_name sitetwo;
  root /var/www/;

  # ssl stuff here
}

server {
  listen 80;
  server_name siteone.com;
  return 301 https://$host$request_uri;
}

Итак, вот несколько советов для всех, кто сюда придет:

Как правильно указал @Sven в этот комментарий, Я должен был написать siteone.com вместо того sitetwo во 2-м серверном блоке в моем nginx.conf упомянутое выше. Но на этом проблема не заканчивается. Созданный мной сайт содержит логин пользователя, поэтому я установил fail2ban на сервере. Из-за этого всякий раз, когда я входил в систему на обоих сайтах (один и тот же домен, разные порты) одновременно в одном браузере, fail2ban заблокирует мой IP. Это заставило меня поверить, что это nginx.conf вопрос, в котором была проблема.

Почему бы fail2ban заблокируйте меня: допустим следующий сценарий,

Я вхожу в siteone.com во вкладке 1 моего браузера. Затем я открываю вкладку 2 в том же браузере и вхожу в siteone.com:8080. Из-за этого siteone.com логин на вкладке 1 недействителен. Однако первая вкладка все еще пытается подключиться к серверу в фоновом режиме с использованием неправильной аутентификации и потому, что это происходит постоянно. fail2ban блокирует мой IP-адрес.

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