Apache 2 Web Server + PHP

Apache HTTP Server è il nome dato alla piattaforma server Web modulare più diffusa in grado di operare da sistemi operativi UNIX-Linux e Microsoft.
Apache è un software che realizza le funzioni di trasporto delle informazioni, di internetwork e di collegamento, ha il vantaggio di offrire anche funzioni di controllo per la sicurezza come quelli che compie il proxy.

Configurazione

I file di configurazione di apache solo locati in /etc/apache2:

  • apache2.conf - Contiene le configurazioni globali necessarie al funzionamento del server web.
  • httpd.conf - Contiene le configurazioni globali personalizzate (All’inizio è un file vuoto).
  • ports.conf - Contiene le informazioni sulle porte su cui in server web sarà in ascolto.
  • envvars - Contiene delle variabili UNIX. Non toccare se non si sa cosa si stia facendo.
  • conf.d/ - Cartella contenente le configurazioni dei pacchetti installati da apt. (es. phpMyAdmin)

La vesione di apache per ubuntu gestisce i moduli e i siti tramite alcuni tools:

  • a2ensite - Abilita i siti
  • a2dissite - Disabilita i siti
  • a2enmod - Abilita i moduli
  • a2dismod - Disabilita i moduli

I siti e i moduli solo collocati nelle cartelle sites-available e mods-available. Quando abiliterete un sito o un modulo, questo verrà linkato nella cartella sites-enabled per i siti e mods-available per i moduli.

Apache 2 e i VirtualHosts

Il sistema con i VirtualHosts è un metodo usato dai server web per ospitare più di un nome di dominio sullo stesso computer, talvolta sullo stesso indirizzo IP.

Appena installato apache è configurato per un solo host virtuale. Se volete ospitare più di un dominio dovete copiare il seguente file in un nuovo documeto chiamato nome.dominio.it nella cartella sites-available.

<VirtualHost *:80>
	ServerAdmin webmaster@nome.dominio.it
	ServerName nome.dominio.it
	DocumentRoot /var/www/nome.dominio.it/htdocs/
	<Directory /var/www/nome.dominio.it/htdocs/>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all
	</Directory>
 
	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
	<Directory "/usr/lib/cgi-bin">
		AllowOverride None
		Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
		Order allow,deny
		Allow from all
	</Directory>
 
	ErrorLog /var/log/apache2/error.log

	# Possible values include: debug, info, notice, warn, error, crit,
	# alert, emerg.
	LogLevel warn
 
	CustomLog /var/log/apache2/access.log combined
   
	Alias /doc/ "/usr/share/doc/"
	<Directory "/usr/share/doc/">
		Options Indexes MultiViews FollowSymLinks
		AllowOverride None
		Order deny,allow
		Deny from all
		Allow from 127.0.0.0/255.0.0.0 ::1/128
	</Directory>
</VirtualHost>

Poi per abilitare il nuovo sito web, da un terminale root utilizzare:

# a2ensite nome.dominio.it
   

Se si ha bisogno di SSL, il file è leggermente diverso:

<VirtualHost *:443>
	ServerAdmin webmaster@localhost

  	DocumentRoot /var/www/
	<Directory />
		Options FollowSymLinks
		AllowOverride None
	</Directory>
	<Directory /var/www/>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all
	</Directory>

	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
	<Directory "/usr/lib/cgi-bin">
		AllowOverride None
		Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
		Order allow,deny
		Allow from all
	</Directory>

	ErrorLog /var/log/apache2/error.log
  
	# Possible values include: debug, info, notice, warn, error, crit,
	# alert, emerg.
	LogLevel warn
     
  	CustomLog /var/log/apache2/ssl_access.log combined
 
	Alias /doc/ "/usr/share/doc/"
	<Directory "/usr/share/doc/">
		Options Indexes MultiViews FollowSymLinks
		AllowOverride None
		Order deny,allow
		Deny from all
		Allow from 127.0.0.0/255.0.0.0 ::1/128
	</Directory>
   
	SSLEngine on
  
	SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem
	SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
 
 	<FilesMatch "\.(cgi|shtml|phtml|php)$">
		SSLOptions +StdEnvVars
 	</FilesMatch>
 	<Directory /usr/lib/cgi-bin>
		SSLOptions +StdEnvVars
  	</Directory>
 
	BrowserMatch ".*MSIE.*" \
		nokeepalive ssl-unclean-shutdown \
		downgrade-1.0 force-response-1.0

</VirtualHost>
 
Tronweb on Facebook @tronweb on Twitter Recent changes RSS feed Creative Commons License Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki