!!! Installazione Tomcat / Apache  :

! Prerequisiti :

#JDK : l'instalazione del motore Java SE Development Kit (JDK) 6 [installazione java|pagename].
# Download da tomcat.apache.org i binary di tomcat (ad esempio file: apache-tomcat-6.0.18.tar.gz) 
# Apache : versione proposta dal OS (apache2).
# Il connector libapache2-mod-jk si può scaricare [mod_jk|http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/] oppure utilizzare la versione proposta nativamente sal Sistema operativo.\\ Attenzione: il connector di tomcat con apache dipende dal version di apache.

! Installazione :
# unpack tomcat in /opt/ e rinominare in /opt/tomcat
# Assicurarsi che il connecton mod_jk sia visibile da apache solo nel caso non sia stata utilizzata l'installazione nativa del modulo.

! Tomcat come servizio 
Per attivare tomcat come servizio nel caso di installazione indipendente dal sistema bisogna create il file /etc/init.d/tomcat che implementi i tre comandi fondamentali di servizo (start-stop-restart). Per ubuntu vedere [ubuntu|http://www.wiki.telnext.com/Wiki.jsp?page=Ubuntu] gestione servizi.\\ Lo script di [avvio di tomcat |avviotomcat] può contenere il comando 
%%prettify 
{{{
cat /opt/template/inizio.xml /etc/apache2/conf.d/vhost.xml/*xml /opt/template/fine.xml > /opt/tomcat/conf/server.xml

}}}
/%
che ricrea il file di configurazione server.xml di tomcat includendo eventuali nuovi siti.

! Configurazione :

Script per la configurazione degli host(apache) e dei contesti(tomcat)\\ \\
- creare la directory /home/www/ \\ \\
- Creare la cartella /opt/script/ e creare il file [addvirtual]\\ \\
- creare la cartella /opt/template/ con i seguenti file. Per i file .xml partire dal server.xml (farsene una copia di backup poichè verrà sovrascritto) di default della versione di tomcat che si sta installando.
# inizio.xml
# fine.xml
# template_db2.xml, template_ps.xml,... (la configurazione di questi dipende con quale database si intende fare connessione via jdbc)
# [logrotate.conf]
# [virtual.conf]
# [webalizer.conf]

! Funzionalità Script Addvirtual
Lo script addvirtual crea automaticamente tutte le configurazioni necessarie ad apache (Virtual Host) e a tomcat (context).

__Convenzione: __i file che descrivono al configurazione apache e tomcat vengono creati nelle directory /etc/apache2/conf.d/vhost.d per i virtual host di apache e /etc/apache2/conf.d/vhost.xml per il contesto Tomcat.

Nel dettaglio addvirtual si occupa di :
# creare directoty per sito (/home/www/www.nostrosito.it/htdocs). Necessita della directory skel in /home/www/.
# file configurazione Virtual Host Apache (/etc/apache2/conf.d/vhost.d/www.nostrosito.it.conf)
# file configurazione Context Tomcat (/etc/apache2/conf.d/vhost.xml/nostrosito.it.xml)
# crea utente ftp per gestione sito
# file di configurazione logrotate
# file di configurazione webalizer


L'utilizzo dello script è il seguente :
%%prettify 
{{{
Usage : addvirtual dominio utente nomedatabase tipodatabase (db2,ps,...)
es : addvirtual nostrosito.it webnostrosito nomenostrodb db2
}}}
/%
!! Tomcat

! Files /opt/template/inizio.xml e /opt/template/fine.xml
I due file contengono la parte iniziale e la parte finale del file di configurazione di tomcat server.xml. Il file dipende dalla versione dell'applicatione server perciò è necessario adattare i due file. 

! Files /opt/template/template_XX.xml
Il/I file contengono la definizione dell'Host. Il nome del file e il suo contenuto dipendono principalmente dal tipo di database a cui si intende effettuare una connessione via jdbc. Per vedere i vari parametri messi a disposizione da tomcat per la definizione di un Host si rimanda alla documentazione ufficiale di tomcat.

!!Apache

! File [virtual.conf]

Il file contiene la configurazione del virtual host di apache.\\
Nella definizione del VirtualHost si fa riferimento alla variabile 'qui' (al posto di un IP secco o di un nome di dominio) che deve essere settata in /etc/hosts:
%%prettify 
{{{
IPMACCHINA	qui\\
}}}
/%
\\
Inoltre sempre in /etc/hosts per evitare questo possibile errore in avvio/stop di apache:\\
'could not determine the server's fully qualified domain name using 127.0.0.1 for servername'

aggiungere 
%%prettify 
{{{
127.0.0.1       localhost.localdomain   localhost       NOMEMACCHINA(es mix4)
}}}
/%
NOTA: togliere anche 127.0.1.1 NOMEMACCHINA che di default esiste

!!Webalizer
E' un tool di creazione statistiche web. le relative configurazioni sono comprese nel file /opt/template/[webalizer.conf].
 
!!Logrotate 
Tool di rotazione dei file di log access.log ed error.log. La relativa configurazione è compresa nel file [logrotate.conf].