Stosunkowo często możemy spotkać się z sytuacją, w której aplikacja działająca przez sieć udostępnia w sobie wbudowany serwer WWW nadający na określonym porcie. Problem rozpoczyna się w sytuacji, gdy jest to nasza jedyna opcja, a mimo to chcielibyśmy mieć jakiś bardziej przyjazny adres w postaci np. subdomeny.
Dziś na szybko zademonstruję konfigurację hosta w serwerze nginx właśnie tak,
aby przechwytywał on ruch występujący na określonym porcie - w tym wypadku na
przykładzie Gitea (społecznościowego forku Gogs, lekkiego serwisu w stylu
GitHub do samodzielnego hostowania). Wystarczy nam wiedzieć, że domyślnie
jest on dostępny na porcie 3000
, a naszym celem jest subdomena git
(na potrzeby wpisu załóżmy że będzie to git.sobak.pl
). W celu przekierowania
ruchu wykorzystamy jedno z powszechnych zastosowań serwera nginx, znane
jako reverse proxy.
server {
listen 80;
server_name git.sobak.pl;
location / {
proxy_pass http://localhost:3000;
}
}
Tak, tylko tyle i aż tyle. W wypadku gdy korzystamy z HTTPS, zmieniamy drugą
linijkę na listen 443
, czyli odpowiedni dla tego rodzaju komunikacji port.
Podany plik prawdopodobnie będziecie musieli zapisać w lokalizacji
/etc/nginx/sites-available/git.sobak.pl
i zsymlinkować z sites-enabled
,
czyli tak jak dla każdego innego hosta w nginxie. Pamiętajcie o zmianie
przykładowych wartości subdomeny i portu - pamiętajcie że to rozwiązanie
absolutnie nie ogranicza się do tej jednej aplikacji lecz stanowi ogólny
schemat postępowania.
Powyższy wpis jest realizacją wymogów konkursu "Daj Się Poznać". Więcej o nim możecie przeczytać w tym wpisie. Po nowe materiały poświęcone tworzeniu projektu Codice, z którym startuję w konkursie, zapraszam w każdy wtorek. Ponadto więcej wpisów, poświęconych temu projektowi lub ogólnej tematyce bloga przeczytacie co sobotę. Miejmy nadzieję że publikacja dwóch wpisów w niedzielę jest tylko niewinnym wypadkiem przy pracy ;)
Komentarze wyłączone
Możliwość komentowania na blogu została wyłączona. Zapraszam do kontaktu na Twitterze, Facebooku lub poprzez formularz, o ten tutaj. Do usłyszenia!