Come prima cosa , potete scaricarvi il software direttamente dal sito ufficiale, http://httpd.apache.org; non ci sono particolari requisiti di sistema minimi, per cui scaricatevi l'installer e lanciatelo. Per l'installazione su Windows, dovete solo settare il nome del Server e del dominio (ad esempio localhost per entrambe se state lavorando in locale, altrimenti l'indirizzo ed il nome effettivo del server di dominio).

L'indirizzo di default in cui verrà installato Apache sarà "C:/Programmi/Apache Group/Apache" per versioni di Apache 1.x e "C:/Programmi/Apache Software Foundation/Apache2.2" per versioni successive alla 2.0.
Per l'installazione su Unix, dovete effettuare le seguenti operazioni dalla shell:
| Decompressione | $ gzip -d httpd-NN.tar.gz $ tar xvf httpd-NN.tar |
| Configurazione (Bisogna prima entrare dentro la directory) |
./configure |
| Buid del pacchetto | $ make |
| Installazione | $ make install |
Il file principale di configurazione di Apache è "httpd.conf", contenuto nella sotto-directory /conf. Esso può essere aperto con un normale editor di testo, come Notepad su Windows o Vi su Linux.
I principali settaggi contenuti in esso si trovano alle seguenti righe:
| riga 268 | Port 80 | Porta per la connessione al server |
| riga 293 | ServerName localhost | Nome del Server impostato durante la fase di installazione |
| riga 301 | DocumentRoot "C:/Apache/htdocs" | Root su cui verranno cercati tutti i file HTML che richiamerete dal browser web. |

Una volta installato e configurato, potete effettuare un test per vedere se tutto è andato per il meglio. Come prima cosa dovete avviare il Server lanciando il file Apache.exe contenuto nella directory principale di Apache e poi potete avviare il browser IE (o altro) e digitare il seguente indirizzo: http://localhost/index.html . Se tutto funziona correttamente dovreste vedere la seguente scritta.
L'alberatura di questa versione è la stessa di quella mostrata sopra, ad eccetto della cartella ora mancante "libexec".
I principali settaggi contenuti nel file "httpd.conf" si trovano alle seguenti righe:
| riga 53 | Listen 80 | Porta per la connessione al server |
| riga 142 | ServerName localhost | Nome del Server impostato durante la fase di installazione |
| riga 149 | DocumentRoot "C:/Programmi/Apache Software Foundation/Apache2.2/htdocs" | Root su cui verranno cercati tutti i file HTML che richiamerete dal browser web. |
Una volta installato il server, troverete una iconcina sulla Status bar di Windows affianco all'ora:

Per avviare il Server dovete semplicemente fare doppio click su tale iconcina, che da rossa diventerà verde, proprio ad indicare che il server si è avviato. Ora potete avviare il browser IE (o altro) e digitare il solito indirizzo: http://localhost/index.html . Se tutto funziona correttamente dovreste vedere la seguente scritta.
Abbiamo già detto che il server web Apache viene utilizzato per visualizzare applicazione web scritte in HTML o in altri linguaggi il cui output sia sempre HTML, come ad esempio il PHP. Inoltre abbiamo spiegato come durante la fase di installazione, sia stato necessario settare il nome del Server web (ricordando che è sempre possibile cambiarlo nel file di configurazione).
Supponiamo che la vostra Document Root sia quella di default (/htdocs) e che voi abbiate creato una vostra applicazione di nome "app" costituita da una cartella madre contenente il file index.html ; per visualizzarlo, basta eseguire Apache.exe, aprire il browser web e scrivere il seguente indirizzo web:
Abbiamo già detto delle diverse versioni di Apache; ebbene quanto segue in questa e nelle prossime pagine vale solo per le ultime versioni di Apache (dalla 2.0 in poi) in quanto nelle vecchie versioni del PHP (< 5.x) non vi era il bisogno di configurare MySQL nel file php.ini.
Per prima cosa cercate il file "libmysql.dll" nella cartella di PHP (C:\php) e copiatelo nella cartella di windows (C:\WINDOWS).

Aprite poi con un editor il file "php.ini" presente nella cartella C:\php. Cercate la riga 536 che inizia per extension_dir e modificatela in modo che punti alla cartella delle estensioni di PHP C:\php\ext come già spiegato nella guida di PHP.
Individuate poi nell'elenco delle estensioni la riga 675 ;extension=php_mysql.dll e cancellate il punto e virgola iniziale.
Adesso salvate il file php.ini appena modificato e riavviate Apache come mostrato precedentemente (doppio clic sull'icona di Apache nel system tray, e premere il pulsante Restart Apache). Per verificare che PHP ha caricato correttamente l'estensione di MySQL aprite il browser e digitate l'indirizzo http://localhost/info.php. Circa a metà della pagina che vi verrà mostrata troverete le seguenti indicazioni:

Ora tutto è pronto per testare uno script PHP-MySQL. Aprite un editor php e scrivete il seguente codice:
<?php
$connessione = mysql_connect("localhost", "root", "")
or die("Connessione non riuscita: " . mysql_error());
print ("Connesso con successo");
mysql_close($connessione);
?>
Salavate ora il file in "testmysql.php" nella DocumentRoot di Apache "htdocs" e lancaite poi IE all'indirizzo http://localhost/testmysql.php per testare la pagina. Se tutto è stato eseguito correttamente otterrete il messaggio "Connesso con successo", altrimenti vi verrà mostrato un messaggio di errore contenente indicazioni sul problema verificatosi.
Per prima cosa cercate il file "libmysql.dll" nella cartella di PHP (C:\php) e copiatelo nella cartella di windows (C:\WINDOWS).

Aprite poi con un editor il file "php.ini" presente nella cartella C:\php. Cercate la riga 536 che inizia per extension_dir e modificatela in modo che punti alla cartella delle estensioni di PHP C:\php\ext come già spiegato nella guida di PHP.
Individuate poi nell'elenco delle estensioni la riga 676 ;extension=php_mysqli.dll e cancellate il punto e virgola iniziale.
Adesso salvate il file php.ini appena modificato e riavviate Apache come mostrato precedentemente (doppio clic sull'icona di Apache nel system tray, e premere il pulsante Restart Apache). Per verificare che PHP ha caricato correttamente l'estensione di MySQL aprite il browser e digitate l'indirizzo http://localhost/info.php. Circa a metà della pagina che vi verrà mostrata troverete le seguenti indicazioni:

Ora tutto è pronto per testare uno script PHP-MySQL. Aprite un editor php e scrivete il seguente codice:
<?php
$link = mysqli_connect("localhost", "root", "");
if (!$link)
{
printf("Connessione non riuscita: ", mysqli_connect_error());
exit();
} else {
echo 'Connesso con successo';
}
mysqli_close($link);
?>
Se volete connettervi a MySQL con il nuovo approccio Object Oriented fornito da mysqli, dovete scrivere:
<?php
$link = new mysqli("localhost","root","");
if(mysqli_connect_errno())
{
printf("Connessione non riuscita: ", mysqli_connect_error());
exit();
} else {
echo 'Connesso con successo';
}
mysqli_close($link);
?>
Salavate ora il file in "testmysql.php" nella DocumentRoot di Apache "htdocs" e lancaite poi IE all'indirizzo http://localhost/testmysql.php per testare la pagina. Se tutto è stato eseguito correttamente otterrete il messaggio "Connesso con successo", altrimenti vi verrà mostrato un messaggio di errore contenente indicazioni sul problema verificatosi.
E' possibile apportare ulteriori modifiche al file di configurazione di Apache in modo da abilitare alcune interessanti caratteristiche del server web. Di seguito viene spiegato come attivare l'uso dei file .htaccess, i SSI ed il caricamento automatico dei file index.php.
I file .htaccess sono dei semplici file di testo che ci permettono di configurare apache senza dover accedere al suo file di config principale.
Per attivare l'utilizzo dei file .htaccess ed SSI (Server Side Include) è necessario aprire il file di configurazione di Apache che si trova in "C:\Programmi\Apache Software Foundation\Apache2.2\conf\httpd.conf" e sostituire alcune direttive con le seguenti:
| Options Indexes FollowSymLinks MultiViews +Includes | riga 194 |
| AllowOverride All | riga 201 |
| <IfModule dir_module> DirectoryIndex index.html index.php </IfModule> |
righe 215-217, istruzione necessaria per il caricamento in automatico della index |