<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
   <title>Pagina di prova dell'installazione di un sito Web con Apache</title>
<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
</head>
<body text="#000000" bgcolor="#FFFFFF" link="#0000FF" vlink="#000080" alink="#FF0000">

<center>
<h1>
Funziona! Il Server Web Apache e' stato installato su questo sito Web!</h1></center>
Se riuscite a vedere questa pagina, allora vuol dire che coloro che gestiscono
questo dominio hanno appena installato il software
Web&nbsp;Server
Apache correttamente. Ora e' necessario aggiungere il vostro materiale
in questo direttorio e sostituire questa pagina di prova, oppure configurare
il server per far riferimento al vostro materiale se collocato altrove.
<p>
<hr>
<blockquote>Se state vedendo questa pagina invece del sito che pensavate,
vi preghiamo di <b>contattare l'amministratore del sito in questione.</b>
(Provate ad inviare un email a <tt>&lt;Webmaster@<i>domain</i>&gt;</tt>.)&nbsp;
Nonostante questo sito stia utilizzando il software Apache, questo non
vi garantisce nessun tipo di contatto diretto al Gruppo Apache, quindi
vi preghiamo di non inviare email riguardanti questo sito o al materiale
in esso contenuto agli autori di Apache. Ogni messaggio del genere verra'
<b><font size="+1">ignorato</font></b>.</blockquote>

<hr>
<br>La <a href="manual/">documentazione</a> relativa di Apache
e' inclusa nella distribuzione.
<p>Il Webmaster di questo sito e' libero di utilizzare l'immagine qui sotto
su qualsiasi Web server potenziato con Apache. Grazie per aver scelto Apache!
<center>
<p><img SRC="apache_pb.gif" ALT="" ></center>

</body>
</html>
