За последние 24 часа нас посетили 18874 программиста и 1638 роботов. Сейчас ищут 1687 программистов ...

Как разделить сайты по портам?

Тема в разделе "Настройка веб-сервера", создана пользователем Сереганек, 1 июн 2018.

  1. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    Есть два конфига на два разных сайта на один и тот же порт
    Код (Text):
    1. server{
    2.   listen 80;
    3.  
    4.   server_name example2.com www.example2.com;
    5.  
    6.   location / {
    7.     root /var/www/example2.com/html;
    8.     index index.html index.htm;
    9.     try_files $uri $uri/ =404;
    10.   }
    11.  
    12.   error_page 500 502 503 504 /50x.html;
    13.   location = /50x.html{
    14.     root /usr/share/nginx/html;
    15.   }
    16. }
    И есть конфиг nginx conf:
    Код (Text):
    1. user nginx;
    2. worker_processes auto;
    3. error_log /var/log/nginx/error.log;
    4. pid /run/nginx.pid;
    5.  
    6. include /usr/share/nginx/modules/*.conf;
    7.  
    8. events {
    9.     worker_connections 1024;
    10. }
    11.  
    12. http {
    13.     log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    14.                       '$status $body_bytes_sent "$http_referer" '
    15.                       '"$http_user_agent" "$http_x_forwarded_for"';
    16.  
    17.     access_log  /var/log/nginx/access.log  main;
    18.  
    19.     sendfile            on;
    20.     tcp_nopush          on;
    21.     tcp_nodelay         on;
    22.     keepalive_timeout   65;
    23.     types_hash_max_size 2048;
    24.     server_names_hash_bucket_size 64;
    25.  
    26.     include             /etc/nginx/mime.types;
    27.     default_type        application/octet-stream;
    28.  
    29.     include /etc/nginx/conf.d/*.conf;
    30.     include /etc/nginx/sites-enabled/*.conf;
    31.  
    32.     server {
    33.         listen       80 default_server;
    34.         listen       [::]:80 default_server;
    35.         server_name  _;
    36.         root         /usr/share/nginx/html;
    37.  
    38.         include /etc/nginx/default.d/*.conf;
    39.  
    40.         location / {
    41.         }
    42.  
    43.         error_page 404 /404.html;
    44.             location = /40x.html {
    45.         }
    46. }
    Прописал тестовые домены в хосты. Доступ к обоим сайтам рапотает по доменам. А как разделить сайты и по портам также? Чтобы я мог попасть на оба сайта следующим образом: IP:port1, IP:port2 ? Я понимаю, что нужно править listen. Пробовал один менять на listen 79, а второй оставлял на 80. Открыл порты в фаерволе, отключил защиту селинукс. Пинг нормальный. Но не работает доступ по IP таким образом. Что я еще не учел здесь?
     
    #1 Сереганек, 1 июн 2018
    Последнее редактирование: 1 июн 2018
  2. Zuldek

    Zuldek Старожил

    С нами с:
    13 май 2014
    Сообщения:
    2.381
    Симпатии:
    344
    Адрес:
    Лондон, Тисовая улица, дом 4, чулан под лестницей
    убедиться в том, что порт слушает вебсервер. И да, так никто не делает ибо нет смысла и неправильно.
     
    Сереганек нравится это.
  3. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
    Ты указываешь listen 80 / 79 выбирая порт, вроде все норм, но дальше идет server_name example2.com www.example2.com; указывающая на конкретный домен. Соответственно получаешь связку домен / ip.
     
    Сереганек нравится это.
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    в случае с http разные домены не нужно разделять на разные порты
    хоть миллион доменов на одном порте можно держать - браузер присылает в запросе тот домен, на который он ломится, в чистом виде. Веб север не путается.

    Какой смысл разделять их? Почему именно по IP?
     
    Сереганек нравится это.
  5. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    Я понял ваши ответы. Думаю, вы правы, нет смысла трогать порты.
     
  6. Zuldek

    Zuldek Старожил

    С нами с:
    13 май 2014
    Сообщения:
    2.381
    Симпатии:
    344
    Адрес:
    Лондон, Тисовая улица, дом 4, чулан под лестницей
    Так иногда делается на шлюзе с вполне понятными целями (в частности так работаю веб-сервисами SAP через SAP веб-диспетчер, обращаясь от тестового и боевого сервера на разные порты) но непосредственно на сервере приложения это делать просто нецелесообразно
     
  7. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.842
    Симпатии:
    652
    Разделять обработку HTTP- и HTTPS-запросов, например.