Nginx je webobý server, který má mít oproti Apache lepší výkon. Tomcat je webový kontejner, ve kterém běží Java webové aplikace. Tomcat po spuštění poslouchá na portu 8080. Pokud nasadíte Java webovou aplikaci na Tomcatu, budete muset pro přístup k ní za url dodat port 8080, takže url by vypadala následovně: www.mojeaplikace.cz:8080. Uživatel, připojující se k takovéto aplikaci, si něco takového určitě pamatovat nebude. Řešením je nainstalovat webový server (Apache, Nginx, …) a přesměrovat provoz na Tomcat. V tomto příspěvku ukáži konfiguraci Nginx na Ubuntu, kdy Nginx bude směrovat provoz z portu 80 na port 8080. Aplikace tedy bude přístupná na očekávané url www.mojeaplikace.cz.
Instalace Nginx
apt-get install nginx
Konfigurační soubor pro Nginx je /etc/nginx/sites-available/default.
server { listen 80; server_name mojeaplikace.cz www.mojeaplikace.cz; location / { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://localhost:8080/; } }
Je dobré si ověřit, že jste v konfiguračním souboru nic nepokopali
nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Provedeme reload Nginx
systemctl reload nginx