__\/__ _ _ __ _ _ |___ /(_) | |/ / | |(_) / / _ __ _ __ _ | ' / _ __ __ _ | | _ / / | | / _` | / _` | | < | '__|/ _` || || | / /__ | || (_| || (_| | | . \ | | | (_| || || | /_____||_| \__, | \__,_| |_|\_\|_| \__,_||_|| | __/ | _/ | |___/ |__/
Velikokrat želiš gostiti več storitev, ki se nahajajo na istih vratih (portih). Če imaš gej administratorja (človek ni omembe vreden) ti bo pustil odpreti samo eno ali dvoje vrat. Zato moraš nekako vse storitve spravit na ena vrata. Velikokrat se uporablja v povezavi s poddomenami (pod1.primer.si
, pod2.primer.si
) lahko pa tudi z potmi (primer.si/pot1
, primer.si/pot2
).
Za omogočanje reverse proxija moramo omogočiti 2 modula: proxy
in proxy_http
.
$ a2enmod proxy
$ a2enmod proxy_http
Ko modula omogočite, moraš ponovno zagnati Apache strežnik:
$ systemctl restart apache2
Spodaj je primer Apache konfiguracije za različne poddomene. V tem primeu je uporabljena glavna domena primer.si
ter poddomeni pod1.primer.si
in pod2.primer.si
. Primer sklepa, da imamo storitvi dostopni na IP naslovih 10.10.10.3
in 10.10.10.4
.
# pod1.primer.si
<VirtualHost *:80>
ServerName pod1.primer.si
ProxyPass "/" "http://10.10.10.3"
ProxyPassReverse "/" "http://10.10.10.3"
</VirtualHost>
# pod2.primer.si
<VirtualHost *:80>
ServerName pod2.primer.si
ProxyPass "/" "http://10.10.10.4"
ProxyPassReverse "/" "http://10.10.10.4"
</VirtualHost>
Spodaj je primer Apache konfiguracije za različne poti. Za ta primer načeloma ne potrebujemo domene, lahko direktno preko IP naslova proxija, vendar bom tudi tukaj uporabil domeno primer.si
. Kot primer poti sta uporabljeni /pot1
in /pot2
. Primer sklepa, da imamo storitvi dostopni na lokalnem IP naslovu na vratih 81
in 82
.
<VirtualHost *:80>
ServerName primer.si
# pot1
ProxyPass "/pot1" "http://127.0.0.1:81"
ProxyPassReverse "/pot1" "http://127.0.0.1:81"
# pot2
ProxyPass "/pot2" "http://127.0.0.1:82"
ProxyPassReverse "/pot2" "http://127.0.0.1:82"
# Primer, če je "/" hostan na proxy strežniku (ni priporočljivo)
DocumentRoot /var/www/html
</VirtualHost>