Navigazione |
più istanze apache nella stessa installazioneMi sono trovato a dover pensare a un modo per gestire più istanze apache2 con una sola installazione, e ogni istanza doveva girare con privilegi diversi (e su porte diverse). Inoltre, in fronte a queste istanze, ce ne stava una con mod_proxy e mod_security. Ecco la realizzazione: Ipotizziamo di usare la directory /etc/apache2-multiserver, con la seguente struttura:
l'archivio con i file completi è scaricabile come allegato di questo post. facciamo qui solo una breve panoramica dei files: all'interno della cartella bin troviamo i files
la cartella servers contiene le configurazioni per le varie istanze; ogni istanza (tranne il proxy) avrà 2 file di configurazione:
il primo contiene la configurazione vera e propria dell'istanza, il secondo contiene la configurazione per il proxy verso quell'istanza. vediamo un esempio: cliente1.serverUser cliente1 Group cliente1 Listen 192.168.17.100:2081 UseCanonicalName Off ErrorLog /var/log/apache2/cliente1/error.log ServerRoot /home/cliente1 PidFile /etc/apache2-multiserver/pids/cliente1.pid ServerName www.cliente1.it ServerAdmin root@cliente1.it ServerSignature Off ServerTokens Prod DocumentRoot /home/cliente1/htdocs Include /etc/apache2-multiserver/common/*.confcliente1.proxy <VirtualHost 192.168.17.100:80> ServerName www.cliente1.it ServerAlias cliente1.it ServerAdmin proxy@cliente1.it CustomLog /var/log/apache2/cliente1/access.log combined ProxyPass / http://127.0.0.1:2081/ ProxyPassReverse / http://127.0.0.1:2081/ </VirtualHost> il file proxy.server contiene la configurazione del proxy. il suo contentuto è User nobody Group nogroup Listen 192.168.17.100:80 UseCanonicalName Off ErrorLog /var/log/apache2/proxy.error_log ServerRoot /etc/apache2-multiserver PidFile pids/proxy.pid LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so NameVirtualHost 192.168.17.100:80 Include /etc/apache2-multiserver/servers/*.proxy ovviamente, gli access log andranno salvati a livello di proxy, mentre gli error log a livello di istanza stessa. |