Portál AbcLinuxu, 5. května 2025 21:23
192.168.1.104 192.168.1.106servery bezia bez problemov. Chcel by som dat pred ne nginx nastaveny ako reverzny proxy (dovod: chcem ich mat obidva pristupne z vonka na http porte 80 (ak sa podari, tak neskor na 443) a mam len jednu verejnu IP). Obidva apache som nastavil aby pocuvali na porte 8080 v /etc/apache2/ports.conf a aj v /etc/apache2/sites-available/. Na dalsej IP sedi nginx
192.168.1.105Postupoval som pripblizne podla toho manualu. Zatial sa pohybujem len v LAN. Ako router pouzivam pfsense a v dns resolvery som si pridal k IP adresam aj Host Overrides, takze dajme tomu
192.168.1.104 mam pod domena1.sk 192.168.1.106 mam pod domena2.skv nginx som vymazal defaul config a podla manualu som nastavil
rm -rf /etc/nginx/sites-enabled/* nano /etc/nginx/sites-available/000-default
server { access_log off; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_pass http://127.0.0.1:8080; } }
ln -s /etc/nginx/sites-available/000-default /etc/nginx/sites-enabled/000-defaulta pre domena1.sk
nano /etc/nginx/sites-available/domena1.sk
server { listen 80; server_name domena1.sk www.domena1.sk; location / { proxy_pass http://192.168.1.104:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
ln -s /etc/nginx/sites-available/domena1.sk /etc/nginx/sites-enabled/domena1.sk systemctl reload nginxOcakaval som, ked v prehliadaci zadam domena1.sk, tak nginx to nasmeruje na 192.168.1.104:8080, ale nefunguje to. Mam ten conf v nginx nejak zle nastaveny ? Trapim sa s tym uz dlhsiu dobu
192.168.1.104 mam pod domena1.sk 192.168.1.106 mam pod domena2.sknginx nema domenu a je na 192.168.1.105
ping domena1.sk PING domena1.sk (192.168.1.104) 56(84) bytes of data. 64 bytes from domena1.sk (192.168.1.104): icmp_seq=1 ttl=64 time=0.470 ms 64 bytes from domena1.sk (192.168.1.104): icmp_seq=2 ttl=64 time=0.430 ms 64 bytes from domena1.sk (192.168.1.104): icmp_seq=3 ttl=64 time=0.719 ms ping domena2.sk PING domena2.sk (192.168.1.106) 56(84) bytes of data. 64 bytes from domena2.sk (192.168.1.106): icmp_seq=1 ttl=64 time=0.551 ms 64 bytes from domena2.sk (192.168.1.106): icmp_seq=2 ttl=64 time=0.561 ms 64 bytes from domena2.sk (192.168.1.106): icmp_seq=3 ttl=64 time=0.823 msToto http://192.168.1.104:8080 aj toto http://domena1.sk:8080 funguje, lebo vtedy idem rovno na apache. Ked zadam http://domena1.sk, alebo http://192.168.1.104, tak sa nic nedeje (web je nedostupny). Ked zadam IP adresu nginxu 192.168.1.105, tak vidim to co aj na http://192.168.1.104:8080 a http://domena1.sk:8080. OK, skusil som si do konfiguraka nginx pridat dalsi server blok pre domena2.sk
server { listen 80; server_name domena2.sk www.domena2.sk; location / { proxy_pass http://192.168.1.106:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
systemctl reload nginxKed zadam 192.168.1.106, alebo domena2.sk tak toto funguje normalne (ale nefunguje 192.168.1.106:8080 ani domena2.sk:8080, ale teoreticky by to malo fungovat, ci ?). Zatial co 192.168.1.104, alebo domena1.sk stale nefunguju (ale funguje 192.168.1.104:8080 aj domena1.sk:8080). Zda sa mi to cele nejake divne
nano /etc/nginx/sites-available/domena1.sk
server { listen 80; server_name domena1.sk www.domena1.sk; location / { proxy_pass http://192.168.1.104:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } server { listen 80; server_name domena2.sk www.domena2.sk; location / { proxy_pass http://192.168.1.106:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }V LAN mi vobec nefunguje http://192.168.1.104 a ani http://domena1.sk (ale zase mi to funguje s portom 8080 (aj IP aj domena)) V LAN mi ale funguje http://192.168.1.106 a aj http://domena2.sk (ale uz mi to nefunguje s portom 8080 (co je vlastne OK)) Teraz som nastavil NAT z 192.168.1.105 na verejnu IP. Mam zaregistrovane 2 verejne free dns domeny. V konfiguraku nginxu som si tie domeny nastavil a funguje mi to presne naopak ako v LAN (pripajam sa z vonka) Z WAN mi vobec nefunguje http://domena2.sk a vypise 502 bad gateway nginx Z WAN mi ale funguje http://domena1.sk. Ked zadam do brovsera http://xx.xx.xx.xx (verejnu IP) tak sa zobrazi to co je na prvom apache (cize to co je na http://domena1.sk). Upozornujem, ze ak to skusam z vonka tak http://domena1.sk a http://domena2.sk su samozrejme ine (ktore som vymenil za verejne a nechcem ich tu zverejnovat)
http://192.168.1.104:8080 http://192.168.1.106Tak v konfiguraci musíš mít:
proxy_pass http://192.168.1.104:8080; (u první domény) proxy_pass http://192.168.1.106; (u druhé domény)
VirtualHost *:80teraz to funguje ako v LAN, tak aj z WAN. A mozem zacat zapasit z letsencrypt este raz dik
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.