OSX Server 5.2 használok. Most van folyamatban a Jira telepítése és szeretném, ha a külvilág felé https kapcsolattal menne. A szerver noip dynamic dns-sel van beállítva az itthon lévő szerverre. Igazából az OSX Server által készített tanúsítvány nekem jó is, biztos nem akarok majd fizetni külön tanúsítványért :)
Szóval amit szeretnék pontosan:
-
Bejön bármilyen weboldal kérés (a 80-as porton) a regisztrált dns címre (most domain.com-ként hivatkozok rá), akkor az legyen átirányítva a https ugyanilyen kérésre.
-
Az összes domain.com/jira (tehát a /jira a fontos) át legyen irányítva a 8080-as portra (proxyval).
Tehát az utolsó lenne főleg lényeg. A /jira kéréseket kellene lekezelni. Rájöttem közben, hogy az OSX Server alatt futó apache alapból proxyként át tudja irányítani a forgalmat (Jira dokumentációban is benne van). Tehát ahelyett, hogy http://domain.com:8080 használnék, át irányítja a forgalmat úgy, hogy http://domain.com/jira. Ez működik is (működött, míg szét nem barmoltam mindent :D). Most ugyanezt szeretném igazából csak úgy, hogy először a http://domain.com/jira forgalmat irányítsa át https://domain.com/jira-ra, majd proxyként kommunikáljon http://domain.com:8080/jira (direkt nem https) módon.
A Jira beállítva arra, hogy /jira legyen az alapértelmezett elérési út.
Az OSX Server-ben beállítva a ddns cím, hogy azon keresztül elérhető a szerver. Ez létrehozott egy alapértelmezett DNS szolgáltatást, hogy a local hálózaton ne kelljen kimennie a forgalomnak.
A Websites oldalon meghagytam a két alapértelmezett beállítást a 80-as és 443-as portra. Mindkét portnál beállítottam aliast a ddns címre. A 80-as portról az alapértelmezett beállítás szerint átirányít a 443-as portra.
Tehát a következő dolgok történnek jelenleg:
- Ha beírom a http://domain.com címet a böngészőbe, akkor átirányít https://domain.com/xcode címre. Ez persze nem baj, mert az Xcode szerver aktív és még nincs weboldal konfigurálva. De már itt átirányít https-re.
- Ha beírom, hogy http://domain.com/jira, akkor kiírja kb, hogy a weboldal ki van kapcsolva, egy adminisztrátor be tudja kapcsolni az oldalt. Ezt kellene átirányítani https-re majd a 8080-as porton proxy-val kommunikáltatni az oldallal.
- Ha beírom, hogy http://domain.com:8080, akkor nem ír ki semmit (ez sem is baj), mert
- Ha beírom, hogy http://domain.com:8080/jira, akkor megjelenik szépen a Jira és működik is.
Szóval a proxy beállítást a /Library/Server/Web/Config/apache2/sites mappa alatt lévől sudo nano 0000_127.0.0.1_34580_.conf és sudo nano 0000_127.0.0.1_34543_.conf-ban végzem. Az első-höz nem nyúltam, azt az OSX Server csinálta, a másikhoz pedig hozzáadtam a következő sorokat (Jira dokumentáció alapján csináltam):
ProxyRequests Off
ProxyVia Off
<Proxy *>
</Proxy>
ProxyPass /jira http://domain.com:8080/jira
ProxyPassReverse /jira http://domain.com:8080/jira
Összegezve amit szeretnék:
http://domain.com/jira -> https://domain.com/jira -> (proxy) -> http://domain.com:8080/jira
Korábban egyszer már működött az, hogy legalább a http://domain.com/jira proxyn keresztül kommunikált a Jira szerverrel a 8080-as porton. De már úgy átállítottam mindent, hogy semmi sem működik :)