Apache HTTP Server: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
 
(15 versioni intermedie di 12 utenti non mostrate)
Riga 1:
{{Software
|Nome = Apache HTTP Server
|Logo = Apache HTTP serverServer logoLogo (2016).pngsvg
|DimensioneLogo = 100px
|Screenshot =
|Didascalia =
|Sviluppatore = [[Apache Software Foundation]]
|UltimaVersione = 2.4.43 (1 aprile 2020)
|DataUltimaVersione =
|UltimaVersioneBeta =
Riga 28:
Secondo la leggenda, il nome Apache nascerebbe dal fatto che inizialmente il server era semplicemente una raccolta di ''patch'' da applicare al server NCSA e, dal nome amichevole "''a patchy server''", sarebbe quindi nato Apache. In realtà, il nome fu scelto in onore della tribù di nativi americani [[Apache]], come riportano le [https://www.apache.org/foundation/faq.html#name domande frequenti] sul sito ufficiale del progetto.
 
Poco dopo nella versione 0.8.8 fu integrata una nuova architettura server, a cui fu dato il [[nome in codice]] di Shambala. La versione 1.0 fu pubblicata il 1º dicembre [[1995]]. Nel giro di un anno, la sua diffusione aveva già superato quella del server NCSA da cui era derivato. La versione 2.0 di Apache venne distribuita durante la conferenza ApacheCon, tenutasi nel marzo [[2000]] a [[Orlando (Florida)|Orlando]], in [[Florida]].
 
Il grande successo di diffusione di questo software è l'indicatore più chiaro della qualità e dell'affidabilità di questo prodotto: secondo un'indagine [http://news.netcraft.com/ Netcraft] del [[2005]], su 75 milioni di siti web, circa 52 milioni utilizzavano Apache e ad ottobre [[2006]] il numero era salito a 60 milioni (69,32% del totale). Apache web server viene utilizzato da 51,01% del totale dei domini italiani registrati<ref>{{Cita web|url=https://www.centroli.it/statistiche-internet-in-italiano|titolo=Statistiche internet in italiano centroli.it|sito=www.centroli.it|lingua=it|accesso=2017-02-15|urlmorto=sì|urlarchivio=https://web.archive.org/web/20170216064108/https://www.centroli.it/statistiche-internet-in-italiano|dataarchivio=16 febbraio 2017}}</ref>.
 
== Descrizione ==
=== Architettura Apache ===
Operativamente, l'architettura è composta da un [[Demone (informatica)|demone]] - in ambiente UNIX - o da un [[Servizio di Windows|servizio]] - in ambiente Microsoft - il quale, sulla base delle impostazioni contenute nel file di configurazione ''httpd.conf'', permette l'accesso a uno o più siti, gestendo varie caratteristiche di sicurezza e potendo ospitare diverse estensioni per pagine attive (o dinamiche), come [[PHP]] o [[Apache Tomcat|Jakarta/Tomcat]].
[[File:ApacheSchema dell'architettura del server Apache.png|thumb|upright=1.3|In linea continua il flusso dei dati reale<br />Tratteggiato il flusso dei dati astratto che forma la [[Pipeline software|pipeline]]]]
 
Il [[Web Server]] Apache presenta un'architettura modulare, quindi ad ogni richiesta del [[client]] vengono svolte funzioni specifiche da ogni modulo di cui è composto, come unità indipendenti. Ciascun modulo si occupa di una funzionalità, ed il controllo è gestito dal core.
Riga 41:
 
Le principali fasi di cui è composto il ciclo sono:
* '''Translation''': traduce la richiesta del client
* '''Access Control''': controlla le richieste in base ai criteri di autorizzazione
* '''MIME Type''': identifica il tipo di contenuto e decide quali moduli possono contribuire a servire la richiesta
* '''Response''': invia la risposta al client e attiva eventuali procedure
* '''Logging''': tiene traccia di tutto ciò che è stato fatto
 
=== Configurare ApacheConfigurazione ===
=== File httpd.conf ===
Gli amministratori del server possono configurare le funzionalità del server modificando il file ''httpd.conf'', che è situato nella subdirectory ''conf'' della directory indicata durante l'installazione. Attraverso questo file vengono messe a disposizione tutte la libertà offerta dal server, per cui è possibile aggiungere moduli, estensioni, nuovi mime-type ed altro ancora.<ref>Per esempio se si volesse aggiungere un modulo bisognerebbe usare questa sintassi:
<source lang="apache">LoadModule nome_modulo percorso_del_file</source>
</ref>
 
==== File di configurazione [[httpd.htaccess]]conf ====
Gli amministratori del server possono configurare le funzionalità del server modificando il file ''httpd.conf'', che è situato nella subdirectory ''conf'' della [[directory]] indicata durante l'installazione. Attraverso questo file vengono messe a disposizione tutte la libertà offerta dal server, per cui è possibile aggiungere moduli, estensioni, nuovi mime-type ed altro ancora.<ref> Per esempio se si volesse aggiungere un modulo bisognerebbe usare questa [[sintassi]]:
Il file ''.htaccess'' permette un'ulteriore personalizzazione del webserver a livello di singola directory.
<sourcesyntaxhighlight lang="apache">LoadModule nome_modulo percorso_del_file</sourcesyntaxhighlight>
 
==== File di configurazione .htaccess ====
Il file ''[[.htaccess]]'' permette un'ulteriore personalizzazione del webserver a livello di singola directory.
È utilizzato in particolar modo nell'[[hosting condiviso]], per modificare le impostazioni standard fornite dal server stesso.