El servidor Apache se desarrolla dentro del proyecto HTTP Server (httpd) de la Apache Software Foundation.
Apache presenta entre
otras características altamente configurables, bases de datos de
autenticación y negociado de contenido, pero fue criticado por la
falta de una interfaz gráfica que ayude en su configuración.
Apache
tiene amplia aceptación en la red: desde 1996, Apache, es el
servidor HTTP más usado. Alcanzó su máxima cuota de mercado
en 2005 siendo
el servidor empleado en el 70% de los sitios web en el mundo, sin
embargo ha sufrido un descenso en su cuota de mercado en los últimos
años. (Estadísticas históricas y de uso diario proporcionadas por
Netcraft3 ).La mayoría de las vulnerabilidades de la seguridad descubiertas y resueltas tan sólo pueden ser aprovechadas por usuarios locales y no remotamente. Sin embargo, algunas se pueden accionar remotamente en ciertas situaciones, o explotar por los usuarios locales malévolos en las disposiciones de recibimiento compartidas que utilizan PHP como módulo de Apache.
Ventajas
- Modular
- Multi-plataforma
- Extensible
- Popular (fácil conseguir ayuda/soporte)
Módulos
La arquitectura del
servidor Apache es muy modular. El servidor consta de una
sección core y diversos módulos que aportan mucha
de la funcionalidad que podría considerarse básica para un servidor
web. Algunos de estos módulos son:
- mod_rewrite - reescritura de direcciones (generalmente utilizado para transformar páginas dinámicas como php en páginas estáticas html para así engañar a los navegantes o a los motores de búsqueda en cuanto a cómo fueron desarrolladas estas páginas).
- mod_proxy_ajp - Conector para enlazar con el servidor Jakarta Tomcat de páginas dinámicas en Java (servlets y JSP).
El servidor de base
puede ser extendido con la inclusión de módulos externos entre los
cuales se encuentran:
- mod_cband - Control de tráfico y limitador de ancho de banda.
- mod_security - Filtrado a nivel de aplicación, para seguridad.
Uso
Apache es usado
principalmente para enviar páginas web estáticas y dinámicas en la
World Wide Web. Muchas aplicaciones web están diseñadas asumiendo
como ambiente de implantación a Apache, o que utilizarán
características propias de este servidor web.
Apache
es el componente de servidor web en la popular plataforma de
aplicaciones LAMP,
junto a MySQL y
los lenguajes de programación PHP/Perl/Python (y
ahora también Ruby).Este servidor web es redistribuido como parte de varios paquetes propietarios de software, incluyendo la base de datos Oracle y el IBM WebSphere application server. Mac OS X integra apache como parte de su propio servidor web y como soporte de su servidor de aplicaciones WebObjects. Es soportado de alguna manera por Borland en las herramientas de desarrollo Kylix y Delphi. Apache es incluido con Novell NetWare 6.5, donde es el servidor web por defecto, y en muchas distribuciones Linux.
Apache es usado para
muchas otras tareas donde el contenido necesita ser puesto a
disposición en una forma segura y confiable. Un ejemplo es al
momento de compartir archivos desde una computadora personal hacia
Internet. Un usuario que tiene Apache instalado en su escritorio
puede colocar arbitrariamente archivos en la raíz de documentos de
Apache, desde donde pueden ser compartidos.
Los programadores de
aplicaciones web a veces utilizan una versión local de Apache con el
fin de previsualizar y probar código mientras éste es desarrollado.
Microsoft Internet
Information Services (IIS)
es el principal competidor de Apache, así como Sun Java System Web
Server de Sun
Microsystems y
un anfitrión de otras aplicaciones como Zeus Web Server. Algunos de
los más grandes sitios web del mundo están ejecutándose sobre
Apache. La capa frontal (front end) del motor de búsqueda Google está
basado en una versión modificada de Apache, denominada Google Web
Server (GWS). Muchos proyectos de Wikimedia también
se ejecutan sobre servidores web Apache.Configuración
La mayor parte de la configuración se realiza en el fichero apache2.conf o httpd.conf, según el sistema donde esté corriendo. Cualquier cambio en este archivo requiere reiniciar el servidor, o forzar la lectura de los archivos de configuración nuevamente.Licencia
La licencia de software
bajo la cual el software de la fundación Apache es distribuido es
una parte distintiva de la historia de Apache HTTP Server y de la
comunidad de código abierto. La Licencia Apache permite la
distribución de derivados de código abierto y cerrado a partir de
su código fuente original.
La Free
Software Foundation no
considera a la Licencia Apache como compatible con la versión 2 de
la GNU
General Public License(GPL),
en la cual el software licenciado bajo la Apache License no puede ser
integrado con software distribuido bajo la GPL:Este es software libre pero es incompatible con la GPL. La Apache Software License es incompatible con la GPL porque tiene un requerimiento específico que no está incluido en la GPL: tiene ciertos casos de terminación de patentes que la GPL no requiere. No consideramos que dichos casos de terminación de patentes son inherentemente una mala idea, pero a pesar de ello son incompatibles con la GNU GPL.4
Sin embargo, la versión
3 de la GPL incluye una provisión (Sección 7e) que le permite ser
compatible con licencias que tienen cláusulas de represalia de
patentes, incluyendo a la Licencia Apache.
El nombre Apache es una
marca registrada y puede ser sólo utilizada con el permiso expreso
del dueño de la marca.
Fuente: Wikipedia
No hay comentarios:
Publicar un comentario