У мене є питання, яке, сподіваюся, є досить поширеним, щоб його швидко вирішити. Зокрема, у мене є сервер, на якому я хочу розміщувати кілька веб-додатків одночасно для особистого використання. Я хотів би, щоб це було добре організовано.
Мій сучасний підхід - встановити / налаштувати кожен із веб-додатків із власним примірником lighttpd-сервера, що працює над HTTP на нестандартному порті (8080, 8081, 8082 тощо). Потім я використовую lighttpd-сервер системи як проксі для кожного з цих веб-додатків. Так, наприклад, myurl.com/tt-rss/
проксі-сервери 127.0.0.1:8080/tt-rss/
тощо. "Головний" екземпляр lighttpd також буде відповідальним за запуск HTTPS (доступ до портів, якими користуються веб-додатки, обмежений лише для localhost), тому я вважаю, що це зручний спосіб обробляти HTTPS все в одному місці, а не необхідність конфігурувати його для кожної веб-програми самостійно.
Проблема, яка у мене виникає, полягає в наступному: я намагаюся запустити Shout webapp для 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
узгоджувати, але я не знаю, як це зробити. Я сподівався, що хтось може допомогти.
Спасибі заздалегідь.
shout.myurl.com
вказав його за допомогою свого провайдера доменних імен на той же сервер, а потім додав до моєї конфігурації в lighttpd: $HTTP["host"] == "shout.myurl.com" { proxy.debug = 1 proxy.server = ( "" => ( ("host" => "127.0.0.1", "port" => 9000) ) ) }