Ответы пользователя по тегу Proxy
  • Как организовать переадресацию с domen.me:port на sub.domen.me для разных сервисов?

    Andrew_Shtein
    @Andrew_Shtein
    "domain.me" - это идентификатор, который можно преобразовать в ip-адрес. Когда вы обращаетесь браузером на "domain.me", браузер на самом деле вызывает "domain.me:80", так как 80 - это порт по-умолчанию для http-протокола.
    У одного ip-адреса только одна программа может занимать один порт одновременно. По-этому, когда на одной машине размещается несколько доменов, то ставят проксирующий web-сервер (nginx, например), который будет "слушать" 80-й порт, а остальные web-сервера ставят "слушать" другие порты (например 9000, 9091, 9090), т.к. 80-й занят. Проксирующий web-сервер смотрит, на какой domen идёт запрос и перенаправляет запрос на соответствующий порт.

    Теперь вернёмся к вашей проблеме. Насколько я понял, то "domen.me", "git.domen.me", "torrent.domen.me", "wiki.domen.me" и т.д. преобразуются в один и тот же ip-адрес?
    В таком случае, если это всё http сервисы, и под "git.domen.me" вы подразумевали "git.domen.me:80", то вам необходимо в настройках nginx прописать что-то типа:
    server{
      server_name git.domen.me;
        location / {
        proxy_pass http://127.0.0.1:9000;
      }
    }
    server{
      server_name torrent.domen.me;
        location / {
        proxy_pass http://127.0.0.1:9091;
      }
    }
    server{
      server_name wiki.domen.me;
      location / {
        proxy_pass http://127.0.0.1:9090;
      }
    }
    server{
      server_name any_service.domen.me;
      location / {
        proxy_pass http://127.0.0.1:any_port;
      }
    }
    Ответ написан
    9 комментариев