Я уверен, что не могу быть первым, кто спросит об этом, но я не смог найти ничего, что полностью применимо к моему сценарию. Поэтому приношу свои извинения заранее, если об этом уже спрашивали.
У меня есть VPS, который я только что настроил с помощью debian 8. У него один IP. И я купил домен.
На этом сервере у меня работает много разных сервисов. Например GitLab и Apache.
Apache и GitLab работают на порту 80.
Есть ли шанс сделать Apache доступным через apache.mydomain.com:80
и GitLab через gitlab.mydomain.com: 80
?
Я знаю, что могу заставить GitLab использовать другой порт, но я действительно хочу, чтобы он был доступен напрямую через gitlab.mydomain.com
. И это то, что меня волнует, потому что я могу открывать порты только в своем брандмауэре, я не могу назначить их субдомену или около того.
Во время поиска я также узнал о виртуальных хостах
, но, похоже, это характерно для Apache. Я также узнал о SVC Records
, но люди говорят, что браузеры на самом деле еще не поддерживают это ... что, очевидно, противоречит цели.
Если вам нужно запустить и Apache, и OpenVPN на одном и том же порту 443, взгляните на sslh - Applicative protocol multiplexer .
В LinuxJournal есть две статьи об этом: одна короткая редакционная. ( http://www.linuxjournal.com/content/one-port-rule-them-all ), а другой объясняет, как настроить Raspberry-Pi в качестве безопасной точки приземления ( http : //www.linuxjournal.com/content/securi-pi-using-raspberry-pi-secure-landing-point ). Существует объяснение того, как настроить SSLH на странице 4 второй статьи.
Однако, если вы не собираетесь поддерживать https на каком-либо из VirtualHosts, работающих на этом сервере, вы можете отключить его в Конфигурация Apache и настройка OpenVPN для использования вместо этого порта 443.
Я бы установил apache на порт 80 и добавил VirtualHost для gitlab.mydomain.com .
Затем настройте VirtualHost с mod_proxy на http://127.0.0.1: 8080 .
Наконец, настройте gitlab для прослушивания 127.0.0.1.
Нашел для вас пример на GitHub: https://gist.github.com/radmen/3689615