This is an archive of past FreeBSD releases; it's part of the FreeBSD Documentation Archive.
FreeBSD è usato per far girare alcuni dei siti web più trafficati al mondo. La maggioranza dei web server su Internet usano attualmene Apache HTTP Server. Il pacchetto software di Apache dovrebbe essere incluso nel tuo media di installazione di FreeBSD. Se non hai installato Apache quando hai installato FreeBSD per la prima volta, lo puoi installare dal port www/apache13 o www/apache2.
Una volta che Apache è stato installato con successo, deve essere configurato.
Nota: Questa sezione copre la versione 1.3.X di Apache HTTP Server dato che è la versione più usata per FreeBSD. Apache 2.X introduce molte nuove tecnologie ma queste non saranno discusse in questa sede. Per maggiori informazioni su Apache 2.X, per favore consulta httpd://httpd.apache.org/.
Il principale file di configurazione di Apache HTTP Server è installato in /usr/local/etc/apache/httpd.conf su FreeBSD. Questo file è un tipico file di testo di configurazione di UNIX® con linee di commento che cominciano col carattere #. Una descrizione comprensiva di tutte le possibili opzioni di configurazione è al di fuori dello scopo di questo libro, così solo le direttive usate più di frequente saranno descritte di seguito.
Questo specifica la gerachia di directory di default per l'installazione di Apache. I binari sono conservati nelle sottodirectory bin e sbin sotto la server root, ed i file di configurazione sono conservati sotto etc/apache.
L'indirizzo email al quale i problemi riguardanti il server dovrebbero essere inviati. Questo indirizzo appare su alcune pagine generate dal server, come alcuni documenti di errore.
ServerName ti permette di impostare un nome host che viene inviato ai client per il tuo server, se questo è differente da quello per il quale l'host è configurato (ad esempio usi www invece del vero nome host).
DocumentRoot: La directory dalla quale servirai documenti. Di default tutte le richieste sono girate a questa directory, ma link simbolici ed alias possono essere usati per puntare ad altre locazioni.
È sempre una buona idea fare copie di backup del tuo file di configurazione di Apache prima di modificarlo. Una volta che sei soddisfatto dalla tua configurazione iniziale sei pronto per iniziare ad eseguire Apache.
Apache non viene eseguito dal super server inetd a differenza di molti altri server di rete. È configurato per girare standalone per migliori performance per gestire le richieste HTTP in entrata dai client web browser. Un wrapper shell script è incluso per rendere il più semplice possibile lo start, lo stop ed il restart del server. Per avviare Apache per la prima volta, esegui:
# /usr/local/sbin/apachectl start
Puoi fermare il server in ogni istante digitando:
# /usr/local/sbin/apachectl stop
Dopo aver fatto modifiche al file di configurazione per una qualsiasi ragione, avrai bisogno di riavviare il server:
# /usr/local/sbin/apachectl restart
Per riavviare Apache senza mandare in abort le connessioni correnti, esegui.
# /usr/local/sbin/apachectl graceful
Informazioni addizionali sono disponibili sulla pagina di manuale di apachectl(8).
Per eseguire Apache all'avvio del sistema, aggiungi la seguente linea ad /etc/rc.conf:
apache_enable="YES"
Se volessi fornire opzioni addizionali di linea di comando al programma Apache httpd avviato al boot di sistema, puoi specificarle con una linea addizionale in rc.conf:
apache_flags=""
Ora che il web server è in esecuzione puoi navigare il tuo sito web puntando il tuo web browser ad http://localhost/. La pagina di default che viene mostrata è /usr/local/www/data/index.html.
Apache supporta due tipi diversi di Virtual Hosting. Il primo metodo è Virtual Hosting basato sul nome. Il Virtual Hosting basato sul nome usa gli header HTTP/1.1 per scoprire l'hostname. Questo permette a molti domini diversi di condividere lo stesso indirizzo IP.
Per fare sì che Apache usi Virtual Hosting basato sui nomi aggiungi una entry come la seguente al tuo file httpd.conf:
NameVirtualHost *
Se il tuo webserver era nominato www.domain.tld e tu avessi voluto installare un dominio virtuale per www.someotherdomain.tld avresti dovuto aggiungere le seguenti entry a httpd.conf:
<VirtualHost *> ServerName www.domain.tld DocumentRoot /www/domain.tld </VirtualHost> <VirtualHost *> ServerName www.someotherdomain.tld DocumentRoot /www/someotherdomain.tld </VirtualHost>
Sostituisci gli indirizzi con gli indirizzi che vuoi usare ed i percorsi dei documenti con quelli che usi.
Per maggiori informazioni sull'impostazione dei virtual host, per favore consulta la documentazione ufficiale a .
Ci sono molti diversi moduli Apache disponibili per aggiungere funzionalità al server base. La Collezione Port di FreeBSD fornisce un modo semplice di installare Apache assieme ad alcuni dei più popolari moduli aggiuntivi.
Il modulo mod_ssl usa la libreria OpenSSL per fornire una forte crittografia attraverso i protocolli Secure Sockets Layer (SSL v2/v3) e Transport Layer Security (TLS v1). Questo modulo fornisce tutto il necessario per richiedere un certificato firmato da un'autorità fidata che emette certificati, cosicchè puoi eseguire un web server sicuro su FreeBSD.
Se non hai ancora installato Apache, una versione di Apache 1.3.X che includa mod_ssl può essere installata con il port www/apache13-modssl. Il supporto ad SSL è anche disponibile per Apache 2.X nel port www/apache13-modssl, dove viene abilitato di default.
Il progetto di integrazione Apache/Perl mette assieme la grande potenza del linguaggio di programmazione Perl e l'Apache HTTP Server. Con il modulo mod_perl è possibile scrivere moduli Apache interamente in Perl. In aggiunta l'interprete persistente integrato nel server evita l'overhead di avviare un interprete esterno e la penalizzazione del tempo di caricamento Perl.
Se non hai ancora installato Apache, allora una versione di Apache che includa mod_perl può essere installato con il port www/apache13-modperl.
Negli ultimi anni, molte aziende si sono rivolte a Internet per migliorare i loro ricavi e aumentare la loro esposizione. Questo ha anche aumentato il bisogno di contenuti interattivi web. Mentre alcune società come Microsoft® hanno introdotto soluzioni nei loro prodotti proprietari, la comunità open source ha risposto all'appello. Una risposta, largamente usata, è nota come PHP.
PHP, anche noto come “Hypertext Prepocessor” è un linguaggio di scripting di scopo generale che è particolarmente adatto per lo sviluppo Web. Adatto ad essere usato all'interno dell'HTML, la sua sintassi deriva dal C, Java™, e Perl con l'intenzione di permettere agli sviluppatori web di scrivere pagine web generate dinamicamente in modo veloce.
Per integrare supporto a PHP5 per il web server Apache, inizia con l'installare il port www/mod_php5.
Questo installerà e configurerà i moduli richiesti per supportare applicazioni web dinamiche. Controlla che le seguenti linee siano state aggiunte al file /usr/local/etc/apache/httpd.conf:
LoadModule php5_module libexec/apache/libphp5.so AddModule mod_php5.c <IfModule mod_php5.c> DirectoryIndex index.php index.html </IfModule> <IfModule mod_php5.c> AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps </IfModule>
Una volta completato, una semplice chiamata al comando apachectl per un tranquillo restart:
# apachectl graceful
Il supporto a PHP in FreeBSD è estremamente modulare. Se viene richiesto un supporto per qualsiasi estensione, un amministratore deve solo installare il port adatto e riavviare Apache come raccomandato sopra.
Ad esempio, per aggiungere supporto al database MySQL a PHP5, semplicemente installa databases/php5-mysql e dai il comando seguente:
# apachectl graceful
Che abiliterà il supporto MySQL in PHP.
Questo, ed altri documenti, possono essere scaricati da ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
Per domande su FreeBSD, leggi la documentazione prima di contattare <questions@FreeBSD.org>.
Per domande su questa documentazione, invia una e-mail a <doc@FreeBSD.org>.