Lighttpd Proxy для обслуживания на другом порту


1

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

Мой текущий подход заключается в установке / настройке каждого из веб-приложений с собственным экземпляром сервера lighttpd, работающим по протоколу HTTP через нестандартный порт (8080, 8081, 8082 и т. Д.). Затем я использую системный сервер lighttpd в качестве прокси для каждого из этих веб-приложений. Так например myurl.com/tt-rss/ прокси к 127.0.0.1:8080/tt-rss/ и так далее. «Основной» экземпляр lighttpd также будет отвечать за запуск HTTPS (доступ к портам, используемым веб-приложениями, ограничен только localhost), поэтому я считаю, что это удобный способ обработки HTTPS в одном месте, а не необходимость его настройки для каждого отдельного веб-приложения.

Проблема у меня заключается в следующем: я пытаюсь запустить веб-приложение Shout для IRC, которое работает на Node.js и по умолчанию просто работает на порту 9000. Проблема в том, что URL-адрес для этого myurl.com:9000 и не myurl.com:9000/shout/ это означает, что если бы я использовал описанный выше подход с проксированием, это означало бы, что я могу использовать только прокси myurl.com => 127.0.0.1:9000, но это не способствует запуску других подобных приложений на моем сервере. Я хотел бы иметь возможность настройки прокси: myurl.com/shout/ => 127.0.0.1:9000/ Я предполагаю, что мне нужно использовать mod_proxy а также mod_rewrite согласованно для этого, но я не уверен, как это сделать. Я надеялся, что кто-нибудь сможет помочь.

Заранее спасибо.


Вы когда-нибудь решали это?
RubberDuck

1
В конце концов, я все понял, но не совсем так, как планировал в первоначальном вопросе. По сути, я создал новое имя хоста: shout.myurl.comуказал на него, используя моего провайдера доменных имен, на тот же сервер, а затем добавил следующее в мою конфигурацию в lighttpd: $HTTP["host"] == "shout.myurl.com" { proxy.debug = 1 proxy.server = ( "" => ( ("host" => "127.0.0.1", "port" => 9000) ) ) }
RedHack

1
Спасибо @RedHack. Очень признателен. Я думаю, что это пригодится для проксирования моего приложения Asp.Net Core.
RubberDuck
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.