Fórum Root.cz
Hlavní témata => Server => Téma založeno: geth 24. 10. 2018, 16:52:26
-
Dobrý den,
provozuji mapový server, na kterém běží pár služeb, každá na stejné veřejné adrese, ale každá na jiném portu. Na tomto mapovém serveru to jinak nejde, což je někdy problém, protože uživatelé mohou mít tyto porty zablokované. Pokud by tam běžela jen jedna služba, nastavila by se na 80 a bylo by to snadné, ale to není můj případ. Na stejném počítači běží i Apache 2.2, kde pro každou tuto službu běží jeden HTML soubor s instrukcemi k ovládání aplikace a s tlačítkem s odkazem na příslušnou adresu mapové služby s nestandardním portem. Server je zapojen ve vnitřní síti a pomocí Forwardingu je pro každý nestandardní port vytvořen virtuální server, tak aby bylo z veřejné adresy na tu konkrétní službu vidět.
Moje otázka je tato. Jak docílit nastavení, či přesměrovaní každé služby na port 80 tak, aby nebyl problém s blokací nestandardních portů, resp. jak v Apache nastavit, aby uživatelé z venku službu každou službu viděli na portu 80?
Jistě existuje několik způsobů i bez Apache, ale samozřejmě hledám ten nejsnazší. Děkuji
-
Hledáš reverzní proxy (https://httpd.apache.org/docs/2.4/howto/reverse_proxy.html), kterou umí dělat i Apache. Pak požadavek sám nevyřizuje, ale předá ho na jiný port klidně i jiného počítače. Uživatel o tom neví a z jeho pohledu jsou všechny služby na jednom místě na jednom stroji a portu.
-
Ak mozes registrovat nove domenove meno mozes spravit virtual hosta pre kazdu appku na rovnakej IP, alebo reverzna proxy..
-
Díky za reakce. V případě reverzní proxy mám trochu strach, zda na to moje vědomosti budou stačit, poté, co jsem jsem si o tom něco přečetl. Nerad bych ohrozil nějakou nevhodnou konfigurací bezpečnost. Každopádně prozkoumám možnosti. Registraci nějaké subdomény sice přímo udělat nemohu, ale asi to bude snazší cesta.
Ještě se nabízí použít před Apache reverzní proxy třeba z Nginx, ale možná to je ještě komplikovanější cesta, i když asi vcelku perspektivní.
-
Díky za reakce. V případě reverzní proxy mám trochu strach, zda na to moje vědomosti budou stačit, poté, co jsem jsem si o tom něco přečetl. Nerad bych ohrozil nějakou nevhodnou konfigurací bezpečnost. Každopádně prozkoumám možnosti. Registraci nějaké subdomény sice přímo udělat nemohu, ale asi to bude snazší cesta.
Ještě se nabízí použít před Apache reverzní proxy třeba z Nginx, ale možná to je ještě komplikovanější cesta, i když asi vcelku perspektivní.
Normalne ty servicy namapuj na podadresare v URL, problem solved
https://httpd.apache.org/docs/2.4/howto/reverse_proxy.html
ProxyPass "/servica1" "http://blabla:8080"
ProxyPass "/servica2" "http://blabla:8081"
A jeste si pohlidej, jestli ty servicy vespod negeneruji nejake fixni URL, pak musis nasadit i mod_rewrite, abys URL ve vygenerovanem HTML kodu nahradil verema, jak se budou jevit navenek pred proxynou.
-
Ipv6 a nič neriešiť asi nebude riešenie 😀 ale je technicky najjednoduchšie. Ináč len reverse proxy, alebo divoké mapovanie portov 1:1
-
snuff1987: Pokud je každá služba samostatný proces, jak to z dotazu vyplývá, tak VirtualHosty bez reverzní proxy jsou k ničemu.