Apache/it

The Apache HTTP Server is an efficient, extensible web server. It is one of the most popular web servers used the Internet.

Supporto in altri pacchetti
Enabling the  global USE flag provides support for Apache in other packages. This may cause to be installed automatically if a package depending on Apache has been emerged.

After configuring USE variables, update the system so the changes take effect:

File di configurazione
Ci sono 2 file principali che configurano il comportamento di Apache2 sul sistema:


 * Gentoo's Apache2 init script configuration file


 * Apache2 server's conventional configuration file

Configurazione dell'init script di Gentoo
The file located in  is Gentoo's init script configuration file. The only active line in this file is the  line:

Questa riga definisce le opzioni che saranno interpretate dai vari file di configurazione utilizzando lo statement  per attivare o disattivare alcune parti dell'intera configurazione. Torneremo a questo punto quando necessario nel resto della guida.

File di configurazione convenzionale per Apache - httpd.conf
The file is Apache server's conventional configuration file. In fact this file is only an entry point for configuration. The whole configuration is split in many files in the directory, that are assembled together using the   directive. For example, the statement, in , aims at including all the files in  which name ends with.

Tenendo conto di ciò che è stato detto nella sezione precendente, e di come la configurazione dei moduli (files in /etc/apache2/modules.d) diviene attiva con l', il contenuto di un file dentro , sarà assemblato con il resto della configurazione SOLO se l'opzione corrispondente utilizzando un flag   nella variabile APACHE2_OPTS, all'interno del file. Il file di configurazione è un'eccezione a questa dato che non parte con un'istruzione   e quindi è sempre incluso nella configurazione risultante.

Configurazione di default
After a fresh install of an Apache server, the configuration resulting from the assemblage of the different configuration files is as follows. Start with the entry point.

Primi segni di vita
Come si vede nella configurazione iniziale sopra, la directory   pre-installata nel virtual host è, il suo server name è localhost. In aggiunta un file index.html è provvisto nella, in modo da poter verificare che tutto sia correttamente installato collegandosi con un browser a http://localhost.

An "It works!" message should be printed on the page.

Enabling mod_security
Controllarequesto modulo editando e  e restartando apache.

Abilitazione supporto PHP
Install PHP with the  USE flag and enable the module:

Prima di testare se il modulo PHP funziona, controllare che il file esista e contenga la seguente definizione:

Se non esistesse, createlo da voi.

Per verificare se il modulo PHP funziona, create una pagina di test:

Now, suppress or rename and open the test page: http://localhost/

A table describing the PHP settings should be visible.

Aggiungere i vostri virtual hosts
Per ogni virtual host, fornite una directory  che sia raggiungibile ed accessibile dal demone Apache. Aggiungete un file di configurazione per il virtual host nella directory  che utilizzi questa   ed il Server Name del virtual host, e non scordate di aggiungere un'entry per questo dominio in.

To assign the apache user/group ownership on the virtual host files, use chown like in the following example:

Di seguito due esempi di definizione di Virtual Host, uno per domainname1.com ed uno per domainname2.com. Da notare le differenti direttive  e   anche se l'host in sè  rimane invariato

E'raccomandato anche definire un virtual host IP based. Questo permette all'amministratore di mettere messaggi per quegli utenti che cercano di raggiungere il sito attraverso il suo indirizzo IP:

Dopo aver inserito i virtual hosts, affinchè questi divention attivi il server deve essere restartato (anche con graceful).

Abilitare PHP attraverso fcgid
Install and. The PHP package requires  to be set as a USE flag:

Editare il file :

Create le directory necessarie:

Creare un link simbolico per il wrapper PHP:

Abilitare il modulo fcgid:

Alla fine, riavviare Apache e controllare il sito  creato precedentemente. Il valore di  dovrebbe essere CGI/FastCGI

Enabling PHP-FPM through mod_proxy_fcgi in Apache 2.4
With PHP 5.3 and above, PHP supports an additional mode, FastCGI Process Manager, or FPM.

The following method relies on the FilesMatch directive and be placed within the main server config or VirtualHosts. The location of the UNIX socket is determined by the listen directive in the, allowing for specifying separate pools per site or function.

In the following example, it is placed within the PHP module config file of Apache:

By default the  directive is not set to a socket. First create the directory for the socket file:

Next, update the file as follows:

Then enable both the PHP and proxy modules:

OpenRC
Start the Apache server:

Add Apache to the default runlevel:

Restart the Apache service:

Reload Apache configuration files:

systemd
Start the Apache server:

Add Apache to the default runlevel:

Restart the Apache service:

Resources
The Apache server can be difficult to configure properly. Below are some resources that may be helpful when issues occur:


 * Risoluzione dei problemi in Apache

Testing
Verifying IP interfaces and ports on which Apache2 is running on and listening to:

Testing if a connection to a Apache server is working on localhost:

Interrupt the connection test with + and.

apr_sockaddr_info_get failed for 
Error:

apache2: apr_sockaddr_info_get failed for System_Hostname

Resolution:

When this occurs, add the host name to the file:

Vedere anche

 * Lighttpd - un web server leggero e veloce.
 * Nginx - un HTTP servera piccolo, robusto e ad alte prestazioni

Risorse esterne

 * Slicehost article: Installing Apache on Gentoo
 * Slicehost article: Apache configuration files on Gentoo
 * Slicehost article: Configuring the Apache MPM on Gentoo
 * Slicehost article: Apache configuration on Gentoo
 * Slicehost article: Apache Virtual Hosts on Gentoo
 * Slicehost article: Enabling and using apache's mod_status on Gentoo
 * apache.org documentation
 * Apache2 mod_pagespeed