Nginx proxy beállítások + rewrite

 ( MirP | 2016. december 9., péntek - 11:08 )

Van egy Jboss webalkalmazásom, amely a wildflyal az 001.002.003.004:8080/alkalmazas/portal címen fut.
Ez elé beállítottam az Nginx-et proxyként, hogy a 80-as porton menjen, majd SSL-el a 443-on, majd beállítottam neki az eles.zafir.hu aldomaint. Ez most így működik is, de még mindig nem az igazi, mert amikor bejön az alkalmazás, nem tetszik a címsor és ezen kellene változtatnom.

Jelenleg így néz ki:
Ha beírom az eles.zafir.hu címet a böngészőbe, akkor egyből átugrik a https://eles.zafir.hu/alkalmazas/portal, majd onnan a https://eles.zafir.hu/alkalmazas/portal/nyitolap oldalra.
Nekem arra lenne szükségem, hogy az eles.zafir.hu cím böngészőbe való beírása után egyből a https://eles.zafir.hu/nyitolap jelenjen meg a címsorban és erre jöjjön be az alkalmazás.
Mindent kipróbáltam már (rewrite, átirányítások, stb.), de sehogy sem akar működni.
Tudna segíteni nekem valaki, aki járatos az Nginx beállításaiban? Mit rontok el?
A jelenlegi beállítás így néz ki:


server {
listen 80;
listen 443;

ssl on;
ssl_certificate /etc/nginx/ssl/zafir_hu_done.crt;
ssl_certificate_key /etc/nginx/ssl/eles.zafir.hu.key;

server_name eles.zafir.hu;
client_max_body_size 1000m;
location / {
proxy_pass http://001.002.003.004:8080/;
}
location = / {
return 301 https://eles.zafir.hu/alkalmazas/portal/;
}
}

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

szerintem ezt olvasd el:
https://www.nginx.com/blog/creating-nginx-rewrite-rules/

--
A legértékesebb idő a pillanat amelyben élsz.
https://sites.google.com/site/jupiter2005ster/

Köszi, erre már én is rábukkantam, de nem sikerült beállítani amit akarok, pedig rengeteg féle módon próbálkoztam vele.

server_name eles.zafir.hu;
client_max_body_size 1000m;
location / {
  proxy_pass http://001.002.003.004:8080/alkalmazas/portal/;
}
location = / {
  return 301 https://eles.zafir.hu/nyitolap;
}	

Nem oké, de kezd érdekes lenni.
Ezzel így egy teljesen üres oldalra visz. Olyan, mintha betöltené az oldalt, mert hibaüzenet az nincs, de mégis teljes az üresség.

Lehet, hogy kell a teljes út: proxy_pass http://001.002.003.004:8080/alkalmazas/portal/$uri;

Szerk.: ez mindenképpen macerás lesz: a Wildflyon tudod állítani, hogy az adott alkalmazás mindent úgy adjon vissza, hogy a base a http://001.002.003.004:8080/alkalmazas/portal url?

Nem oké így sem sajnos, ugyanúgy teljesen üres oldal.
A wildflyon sajnos nem tudok állítani, de base-ként /alkalmazas/ van beállítva ha jól tudom, legalábbis a böngésző vizsgálója base href="/alkalmazas/" írja.

Azért nem megy.
/ → /nyitolap → /alkalmazas/portal/nyitolap
Ha ebből visszajön bármilyen hivatkozás, amely a base-t is tartalmazza, az eredmény:
/alkalmazas/portal/hivatkozás → /alkalmazas/portal/alkalmazas/portal/hivatkozás

Szóval, vagy megoldod, hogy az alkalmazás számára a gyökér a / legyen, vagy vért izzadsz, és minden hivatkozást átíratsz a proxyval. (Tudtommal van rá nginx modul, de ér ennyit?)

Köszönöm, akkor ebbe bele fogom túrni magam a hétvégén, hogy hol tudom ezt átírni.
Természetesen az előbbi megoldás lesz a nyerő.