Apache è un potente server il cui nome deriva da una frase inglese associata al nome della tribù Apache degli indiani nordamericani. Tra gli utenti russi, ha un nome comune "Apache". Questo è un software open source con licenza GPL. Uno dei suoi maggiori vantaggi è il suo server multipiattaforma, il che significa che può funzionare su una varietà di sistemi operativi mantenendo prestazioni eccellenti.
Dal 1996, questo è il server più popolare al mondo grazie alla sua stabilità e sicurezza. Apache è sviluppato da una comunità di utenti-sviluppatori, guidata dalla Apache Software Foundation.
Storia di Apache
Nel marzo 1989, Tim Berners Lee, uno scienziato inglese che lavora al CERN (Svizzera), propose un nuovo modo per gestire l'enorme quantità di informazioni nei progetti del CERN. A quel tempo nessuno sapeva cosa fosse Apache. Lo sviluppo iniziale della rete di documenti con collegamenti ipertestuali, come li chiamava Ted Nelson nel 1965, portò alla creazione del WWW.- il primo software rilasciato nel novembre 1990 con il nome World Wide Web, con browser web, interfaccia grafica ed editor WYSIWYG. Due anni dopo, c'erano solo una trentina di voci nell'elenco dei server WWW, tra cui HTTPs NCSA.
La vera storia di Apache inizia nel marzo 1995 con il rilascio di Apache 0.2 basato sul server NCSA HTTPD 1.3. Molti utenti sono interessati a sapere cos'è Apache oggi e com'era il programma nei primi mesi della sua esistenza. Era solo una serie di modifiche applicate al server NCSA. Successivamente, Robert Thau ha rilasciato Shambhala 0.1 con API per moduli che si sono rivelati molto efficaci.
Le pietre miliari più importanti del progetto sono state la piena conformità allo standard HTTP 1.1, incluso nell'aprile 1997 come versione 1.2. Questa versione includeva già la piattaforma Windows NT, lanciata nel luglio 1997. La combinazione di file di configurazione è stata implementata nella versione 1.3.3.
Apache Group è responsabile dell'evoluzione del server web e delle decisioni di sviluppo specifiche. Questo gruppo dovrebbe essere distinto dagli sviluppatori principali - Gruppo principale. La natura volontaria della maggior parte degli sviluppatori rende improbabile che siano tutti attivi in Apache contemporaneamente, quindi il kernel è responsabile di mantenerlo attivo e funzionante. In generale, le decisioni che gli sviluppatori devono prendere appartengono al kernel e sono limitate ai voti per includere il codice. D' altra parte, di solito hanno accesso in scrittura al repository CVS, quindi fungono da gateway per il codice, assicurando che sia corretto e di buona qualità.
Requisiti minimi evantaggi
Apache ha ottenuto un ampio consenso sul Web ed è stato il server HTTP più utilizzato dal 1996. Ha raggiunto la sua quota di mercato più alta nel 2005, quando il server è stato utilizzato dal 70% dei siti in tutto il mondo. Negli ultimi anni, la sua quota di mercato è diminuita. È interessante notare che per Apache un tale declino non indica l'impopolarità e il degrado della tecnologia.
Requisiti minimi per il funzionamento:
- Processore - Pentium.
- RAM - 64 MB.
- OS-Microsoft Windows, GNU/Linux.
- Dimensione dell'installazione - 50 MB.
Vantaggi:
- Design modulare.
- Open source.
- Design multipiattaforma.
- Estendibilità.
- Popolare: facile ottenere aiuto e supporto.
Architettura del server
Il server modulare Apache è costituito da una sezione principale e vari moduli che forniscono la maggior parte delle funzionalità di base. Alcuni di questi moduli:
- mod_ssl - comunicazione sicura su TLS;
- mod_rewrite - riscrittura degli indirizzi, comunemente usata per convertire pagine dinamiche come php in pagine statiche per ingannare i motori di ricerca su dove sono stati progettati;
- mod_dav - Supporto del protocollo WebDAV (RFC 2518);
- mod_deflate - l'algoritmo di compressione è trasparente quando il contenuto viene inviato al client;
- mod_auth_ldap - consente agli utenti di autenticarsi su un server LDAP;
- mod_proxy_ajp -connettore per comunicare con le pagine dinamiche Jakarta Tomcat in Java (servlet e JSP).
Il server di base può essere espanso per includere moduli esterni, inclusi:
- mod_cband - controllo del traffico e limitazione della larghezza di banda;
- mod_perl - dinamico in Perl;
- mod_php - dinamico in PHP;
- mod_python - dinamico in Python;
- mod_rexx - dinamico nell'oggetto REXX e REXX;
- mod_ruby - dinamico in Ruby;
- mod asp dot net - dinamico in Microsoft. NET;
- mod_mono - da dinamico a mono;
- mod_security - filtraggio a livello di applicazione per la sicurezza.
Configurazione e sicurezza
Per capire cos'è Apache in termini di sicurezza, devi considerare la sua configurazione. La maggior parte della configurazione viene eseguita nei file apache2.conf e httpd.conf, a seconda del sistema su cui è in esecuzione il software. Qualsiasi modifica a questo file richiede il riavvio del server o la lettura forzata di nuovo.
La licenza software con cui viene distribuito il software principale di Apache è un segno distintivo della storia di Apache HTTP Server e della comunità open source. La licenza consente la distribuzione di prodotti open e closed source.
La Free Software Foundation non considera la licenza Apache compatibile con la versione 2 della GNU General Public License (GPL), in cui il software è concesso in licenza e non è integrato con il software. Questo deve essere preso in considerazione primaconfigurare un server web Apache distribuito sotto licenza GPL. Tuttavia, la versione 3 della GPL include una disposizione che ne consente la compatibilità con le licenze che prevedono clausole di indennizzo del brevetto.
La maggior parte delle vulnerabilità di sicurezza scoperte e corrette possono essere sfruttate solo da utenti locali, non da remoto. Tuttavia, alcuni funzionano ancora in remoto in determinate situazioni. O se vengono utilizzati da utenti locali malintenzionati per violare gli accordi di hosting condiviso utilizzando PHP come modulo del server Web Apache gratuito.
Verifica del funzionamento di Apache
Per assicurarti che Apache funzioni correttamente, apri un browser web e digita il seguente indirizzo: https://localhost. Quindi premi Invio, viene visualizzata una pagina bianca con il messaggio "Funziona", che è la prova che il server web funziona correttamente.
Apache ti consente di creare configurazioni personalizzate da personalizzare e adattare alle tue esigenze. Per fare ciò, trova il file http.conf in C:appserv Apache2.2 conf. Viene eseguito il backup per evitare errori di runtime, quindi viene aperto con qualsiasi editor e vengono modificate le righe necessarie.
Per eseguire correttamente questi passaggi, è necessario avere una buona conoscenza del lavoratore Apache, poiché qualsiasi modifica apportata si rifletterà nelle prestazioni e nell'avvio di Apache. Grazie agli ultimi consigli, il server verrà installato. Funzionerà in una configurazione di base che ti consente di scaricarepagine o applicazioni di rete su Internet.
Gestione delle informazioni
Apache è il server web più utilizzato, il leader con il maggior numero di installazioni al mondo, molto più avanti di altre soluzioni come Microsoft Internet Information Server (IIS). Questo progetto è aperto all'uso perché è multipiattaforma, ha versioni per tutti i principali sistemi operativi, è molto affidabile e si distingue per sicurezza e prestazioni.
Il computer su cui è in esecuzione questo software ha lo stesso nome. Questo è fondamentale in quanto è responsabile dell'accettazione delle richieste di pagina provenienti dai visitatori che accedono al sito e della gestione della loro consegna o rifiuto secondo la politica di sicurezza stabilita. Sebbene questo processo possa sembrare semplice, include molti aspetti e funzioni che devono essere completati:
- Ricerca prestazioni.
- Un gran numero di richieste HTTP, incluso il multitasking, potrebbe lasciare il servizio compresso.
- Restrizioni sull'accesso ai file, controllo dell'autenticazione degli utenti o filtraggio delle richieste in base alla loro origine.
- Gestione degli errori nelle pagine di informazioni sui visitatori e reindirizzamento a pagine predefinite.
- Gestire le informazioni da trasmettere secondo il loro formato e informare adeguatamente il browser che richiede la risorsa specificata.
- Registro di gestione per la memorizzazione delle richieste ricevute, degli errori che si sono verificati ein generale, tutte le informazioni che vengono registrate e analizzate per ottenere statistiche di accesso al sito.
Apache ti consente di configurare un hosting virtuale basato su indirizzi IP o nomi, ovvero di avere più siti Web su un computer.
File apache2.conf
Indubbiamente, apache2.conf è il file più importante, in quanto definisce il comportamento generale delle pagine web ed è anche responsabile dell'accesso a vari moduli che estendono le funzionalità del server.
Si trova nella directory /etc/apache2 e poiché è un file di testo può essere facilmente modificato con un editor di testo. Proprietà del file di configurazione - Variabili globali del server ed estensioni delle funzionalità.
Le variabili globali del server sono variabili che definiscono l'operazione complessiva:
- Tabella delle direttive Apache. Il nome del server è indicato dalla variabile ServerName, quindi qualsiasi reindirizzamento o collegamento esistente nei documenti HTML funziona correttamente. La maggior parte delle variabili di configurazione sono distribuite tra altri piccoli file archiviati in mods-available.
- .htaccess è un file di testo nascosto che ti permette di personalizzare il funzionamento del server.
- "Apache" è una directory specifica senza dover modificare il file di configurazione principale di apache2.conf. Quando un client web richiede un file dal server, guarda dalla directory principale alla sottodirectory contenente il.htaccess richiesto e tiene conto delle direttive in esso contenute prima di effettuare la richiesta.
Principio.htaccess:
- Proibisce l'elenco dei file nella directory.
- Reindirizza il traffico web.
- Imposta le pagine di errore.
- Limita l'accesso a determinati file.
- Nega l'accesso a indirizzi IP o intervalli di indirizzi IP specifici.
- Estende le funzionalità relative ad altre chiamate di moduli e file di configurazione. Tutte le direttive associate a questo elemento saranno precedute dalla parola "Abilita".
Installazione del server Web Apache
Apache è stato originariamente progettato per funzionare con la tecnologia PHP, ma può funzionare anche con. NET senza problemi, il che lo rende più efficace di IIS di Microsoft, che è un collaboratore per i server che utilizzano IIS e fornisce supporto completo PHP senza dover cambia la configurazione.
Per installare ed eseguire un server web, devi prima scaricarlo dal sito ufficiale. Trova sempre l'ultima versione del software disponibile e controlla se verrà identificato come Win32 Binary incluso OpenSSL.
La versione ha un sistema integrato di installazione e protezione dei dati. Una volta selezionato, viene scaricato sul PC. Fare doppio clic sull'icona del file per avviare il processo, che è semplice in quanto è accompagnato da un assistente.
Una delle prime finestre che fornirà le informazioni necessarie affinché il server web possa connettersi alla rete è la finestra delle informazioni. Lì, l'utente compila un breve modulo aggiungendo il nome del dominio di rete, il nome del server e l'indirizzo e-mailamministratore. Per le prime due opzioni scegli localhost.
Successivamente, apparirà la finestra di installazione, dove sono elencati tutti i componenti disponibili. Selezionali tutti e verifica se la cartella c:appserv Apache2.2 esiste. Quindi, configura il server web Apache.
Web Monitor sulla barra delle applicazioni
Dopo aver installato Apache assicurati che sia stato fatto correttamente. Per fare ciò, vai al menu "Start" e trova l'opzione "Esegui". Verrà visualizzata una finestra pop-up in cui si immette cmd, viene visualizzata una schermata pop-up di sistema. Per assicurarti che l'utente sia in esecuzione come amministratore, fai clic con il pulsante destro del mouse sulla finestra e seleziona "Esegui come amministratore".
Algoritmo di installazione:
- Trova la cartella bin di Apache nella console di Windows, per fare ciò, scrivi la seguente frase nella console - c: appserv Apache2.2? in.
- Dopo essere entrato, premi Invio e il componente di sistema apparirà così - C: appserv Apache2.2? In>.
- Nella cartella bin, digita http:.exe -k install e premi Invio.
- Apparirà un messaggio simile a ". Apache 2.2: servizio già installato". Questo messaggio verificherà che Apache sia stato installato correttamente.
Uno dei modi più efficaci per verificare se Apache funziona correttamente è controllare se il monitor dell'applicazione è attivo. Può essere visto sulla barra delle applicazioni. Se non è attivo, attivalo andando nel menu Start, Tutti i programmi e Apache http Server 2.2., fai clic su Monitor Apache Server e attivalo.
Monitor è utile perché ti permette di fermare il server,mettilo in pausa e attivalo in tutta comodità senza entrare nella finestra della console, semplicemente facendo clic sull'icona sulla barra delle applicazioni per aprire la finestra di controllo.
Suggerimenti per l'installazione di Linux
Se un utente ha un sito Web e ha bisogno di una piattaforma per ospitarlo, puoi utilizzare i servizi di uno dei provider di hosting o provare a ospitare il tuo sito Web sul server da solo.
Algoritmo di installazione:
- Scarica l'ultima versione stabile di Apache.
- Scarica i file sorgente in base al sistema.
- Estrai i file del software.
- Dopodiché, i file scaricati dovranno essere decompressi: gunzip -d httpd-2_0_NN.tar.gz; tar xvf
- Questo crea una nuova directory nella directory corrente con i file di origine.
- Non appena compaiono i file, di' alla macchina dove trovare tutti quelli originali. Il modo più semplice per farlo è accettare tutte le impostazioni predefinite e digitare:./configure.
- Imposta Apache, a condizione che non ci siano problemi con l'installazione e la compilazione. L'utente modifica la configurazione, che equivale a modificare il file httpd.conf. Di solito viene modificato con un editor di testo - vi PREFIX /conf/httpd.conf. Devi essere root per apportare modifiche.
- Controlla il funzionamento del server.
Applicazione sul World Wide Web
Apach viene utilizzato principalmente per inviare pagine statiche e dinamiche al World Wide Web. Molte applicazioni sono progettate conambienti di implementazione Apache o utilizzerà le caratteristiche di questo server. Apach è un componente server nella popolare piattaforma applicativa LAMP insieme ai linguaggi di programmazione MySQL e PHP, Perl, Python e Ruby, inclusi il database Oracle e il server delle applicazioni IBM WebSphere. Mac OS X lo integra come parte del proprio server Web e supporta le applicazioni WebObjects.
Apache viene utilizzato per molte altre attività in cui è necessario accedere al contenuto in modo sicuro e affidabile. Ad esempio, quando si condividono file da un personal computer a Internet. Un utente che ha installato Apache sul proprio desktop può posizionare arbitrariamente file nella root del documento, da dove possono essere condivisi.
Gli sviluppatori di applicazioni Web a volte utilizzano una versione locale di Apache per visualizzare in anteprima e testare il codice durante lo sviluppo. Microsoft Internet Information Services (IIS) è il principale concorrente di Apache, così come il server Web Sun Java System di Sun Microsystems e molte altre applicazioni come Zeus Web-Server.
Alcuni dei più grandi siti web del mondo sono alimentati da Apache. Il front-end del motore di ricerca di Google si basa su una sua versione modificata denominata Google Web Server (GWS). Molti progetti Wikipedia vengono eseguiti anche su server Apache.