Apache és un programari gratuït i de codi obert de servidor web que s'utilitza per aprox 40% dels llocs web per tot el món. Apache HTTP Server és el seu nom oficial. Està desenvolupat i mantingut per la Apache Software Foundation . Apache permet als propietaris dels llocs web publicar contingut al web. És la raó per la qual es coneix com a ' servidor web .' Una de les versions més fiables i antigues del servidor web Apache es va publicar el 1995.
Si algú vol visitar qualsevol lloc web, omple el nom del domini a la barra d'adreces del seu navegador. El servidor web portarà els fitxers sol·licitats actuant com a repartidor virtual.
Significat del servidor web
Servidors de correu, servidors de bases de dades, servidors web, i servidors de fitxers utilitzar diferents tipus de programari de servidor. Totes aquestes aplicacions poden accedir a molts fitxers desats al servidor físic i aplicar-los per a molts objectius.
L'objectiu dels servidors web és oferir llocs web a través d'Internet. Es comporta com un intermediari entre les màquines client i servidors per aconseguir aquest objectiu. Pot treure el contingut a través del servidor sobre cada sol·licitud de l'usuari. A més, lliura aquesta sol·licitud al web.
Una de les tasques més crítiques de qualsevol servidor web és proporcionar serveis a diferents usuaris de la web alhora. Els servidors web executen fitxers especificats en un tipus diferent de llenguatges de programació, com ara Java , Python , PHP , i molts altres. Els servidors web converteixen aquests fitxers en fitxers HTML estàtics. Proporciona serveis a aquests fitxers dins del navegador del servidor web. El navegador web es pot definir com una eina responsable d'una comunicació client-servidor decent.
Funcionament d'Apache
Apache no és cap servidor físic; és un programari que s'executa al servidor. Tanmateix, el definim com un servidor web. El seu objectiu és establir una connexió entre els navegadors dels visitants del lloc web (Safari, Google Chrome, Firefox, etc.) i el servidor. Apache es pot definir com un programari multiplataforma, de manera que pot funcionar en servidors Windows i UNIX.
abstracció en java
Quan qualsevol visitant desitgi carregar una pàgina al nostre lloc web, la pàgina d'inici, per exemple, o la nostra pàgina 'Quant a nosaltres', el navegador del visitant enviarà una sol·licitud al nostre servidor. Apache retornarà una resposta juntament amb cada fitxer sol·licitat (imatges, fitxers, etc.). El client i el servidor es comuniquen mitjançant el protocol HTTP i Apache és responsable de la comunicació segura i fluida entre ambdues màquines.
Apache és un programari molt alt personalitzable . Conté l'estructura basada en mòduls. Diversos mòduls permeten als administradors del servidor activar i desactivar funcionalitats addicionals. Apache inclou mòduls per a la memòria cau, seguretat, autenticació de contrasenyes, reescriptura d'URL i altres finalitats. A més, podem configurar la nostra pròpia configuració del servidor amb l'ajuda d'un fitxer conegut com .htaccess . És un fitxer de configuració compatible d'Apache.
disseny de quadrícula
Altres servidors web vs. Apache
Hi ha tants servidors web disponibles que són diferents d'Apache. Totes les aplicacions del servidor web s'han construït per a diferents tipus d'objectius. Apache té alguns rivals i alternatives i s'utilitza principalment programari.
Apache contra NGINX
Nginx es pronuncia com Motor-X . És una nova aplicació de servidor web i publicada per primera vegada el 2004. Nginx ha guanyat popularitat entre els propietaris dels llocs web. Va ser desenvolupat per resoldre el problema c10k, el que significa que els servidors web que utilitzen fils per gestionar diverses sol·licituds dels usuaris no poden gestionar més de 10.000 connexions alhora.
- Els propietaris dels llocs web de gran trànsit poden trobar problemes de rendiment perquè Apache utilitza una estructura basada en fils. Nginx defineix el problema c10k que probablement és un dels més afortunats.
- Nginx conté una arquitectura basada en esdeveniments. No crea un procés més nou per a totes les sol·licituds. En lloc de gestionar totes les sol·licituds entrants en un fil individual. Aquest procés gestiona diversos processos de treball que implementen el processament real de la sol·licitud. El model basat en esdeveniments de Nginx comparteix les sol·licituds dels usuaris entre les tècniques dels treballadors d'una manera fàcil i eficient, per la qual cosa proporciona una millor escalabilitat.
- Nginx pot ser una millor opció perquè pot gestionar llocs web d'alt trànsit utilitzant recursos mínims. Més concretament, pot ser utilitzat per diversos llocs web d'alta visibilitat com Airbnb, Pinterest, Hulu i Netflix.
- Tanmateix, Apache ofereix molts avantatges a Nginx perquè té una configuració fàcil, un entorn agradable per a principiants i diversos mòduls per a jugadors mitjans o petits.
Apache contra Tomcat
Tomcat cab es defineix com un servidor web i està millorat per l'Apache Software Foundation. Per tant, Apache Tomcat és el seu nom oficial. Tomcat també és un servidor HTTP. Tanmateix, millora les aplicacions Java en lloc dels llocs web estàtics. Aquest servidor web pot executar moltes aplicacions Java diferents com WebSocket, Java EL, JSP (Pàgines JavaServer) i Servlet Java .
- Concretament, Tomcat es va crear per a aplicacions Java, mentre que Apache s'ha creat com a servidor HTTP. Podem aplicar Apache amb diferents llenguatges de programació (Perl, Python, PHP, etc.) amb el suport del mòdul Apache adequat (mod_perl, mod_python, mod_php, etc.).
- Encara que podem aplicar un servidor web Tomcat per servir pàgines web (estàtica), és menys efectiu per a aquest propòsit en comparació amb el servidor Apache. Tomcat pot carregar prèviament la màquina virtual de Java i altres biblioteques de Java que no requerirem a la majoria dels llocs web.
- A més, Tomcat és menys configurable en comparació amb altres tipus de servidors web. La millor opció és un servidor HTTP com NGINX o Apache per executar WordPress.
Pros i contres d'Apache
Apache pot ser una opció excel·lent per executar el nostre lloc web en una plataforma versàtil i estable. Tot i que, ve amb alguns desavantatges que hem d'entendre.
Avantatges:
- Programari estable i fiable.
- Gratuït i de codi obert, fins i tot per a ús econòmic.
- Pedaços de seguretat regulars, actualitzats amb freqüència.
- Amic per a principiants, fàcil de configurar.
- Flexible a causa de l'estructura basada en mòduls.
- Funciona de manera immediata amb els llocs de WordPress.
- Multiplataforma (implementa en servidors Windows i Unix).
- Suport fàcilment disponible i comunitat enorme en cas de qualsevol problema.
Contres:
- Diversos problemes de rendiment en llocs web de trànsit molt intens.
- Diverses opcions de configuració poden causar susceptibilitat de seguretat.
Versions d'Apache
Versió 1.1
Aquesta versió d'Apache va ser autoritzada l'any 2000 per l'ASF. El canvi principal es troba dins de la 'clàusula publicitària' de la llicència 1.0. El producte derivat de la 'clàusula publicitària' ja no és necessari per incloure aspectes dels materials publicitaris (només a la documentació).
Versió 2.0
La versió 2.0 d'Apache va ser adoptada per l'ASF el gener de 2004. Els seus objectius declarats inclouen la creació de la llicència fàcil d'aplicar per a alguns projectes que no són ASF. Pot millorar la compatibilitat amb el programari basat en GPL. Permet afegir la llicència per referència en lloc de llistar-se a tots els fitxers. També aclareix la llicència sobre les contribucions. Necessita qualsevol llicència de patent sobre contribucions que infringeixin les patents de la contribució necessàriament.
Seguretat d'Apache
Com altres servidors web, Apache es pot explotar i piratejar. La principal eina d'atac d'Apache és Slowloris. Slowloris pot explotar els errors del programari Apache. Pot construir diversos sòcols i els manté vius i envia diversos bytes (anomenats 'capçaleres de manteniment') per informar al servidor que el sistema està connectat i no té cap problema de xarxa.
llista de matrius java
Molts desenvolupadors d'Apache han definit Slowloris amb diversos mòduls per limitar els danys causats. Diversos mòduls d'Apache com ara mod_antiloris, mod_noloris, mod_security, mod_evasive, mod_qos, i mod_limitipconn S'ha suggerit cadascun per reduir la possibilitat de l'atac reeixit de Slowloris. Apache envia el mòdul mod_reqtimeout com a solució executiva promoguda pels desenvolupadors des d'Apache 2.2.15.
Desenvolupament d'Apache
Versions del servidor HTTP Apache
Últim llançament | Versió inicial | Versió |
---|---|---|
03-02-2010 (1.2.42) | 06-06-1998 | 1.3 |
10-07-2013 (2.0.65) | 06-04-2002 | 2.0 |
11-07-2017 (2.2.34) | 01-12-2005 | 2.2 |
07-08-2020 (2.4.46) | 21-02-2012 | 2.4 |
El projecte Apache és un esforç col·lectiu de millora del programari que té com a objectiu fer una implementació d'un servidor HTTP de codi font de qualitat comercial, robusta, disponible gratuïtament i ric en funcions. El projecte ha estat gestionat conjuntament per un equip de voluntaris col·locats per tot arreu. Es pot fer utilitzant la Web i Internet per desenvolupar, comunicar i planificar qualsevol servidor i la documentació relacionada.
El projecte és un factor de l'Apache Software Foundation. Molts usuaris han compartit el seu codi, documentació i idees al projecte.
La versió 2.4 d'Apache ofereix suport per a plataformes Tandem, NeXT, UX/A, TPF i BeOS.