Apache es un poderoso servidor cuyo nombre proviene de una frase en inglés asociada con el nombre de la tribu Apache de los indios norteamericanos. Entre los usuarios rusos, tiene un nombre común "Apache". Este es un software de código abierto con licencia GPL. Una de sus mayores ventajas es su servidor multiplataforma, lo que significa que puede ejecutarse en una variedad de sistemas operativos mientras mantiene un rendimiento excelente.
Desde 1996, este es el servidor más popular del mundo debido a su estabilidad y seguridad. Apache es desarrollado por una comunidad de usuarios-desarrolladores, liderada por Apache Software Foundation.
Historia de Apache
En marzo de 1989, Tim Berners Lee, un científico inglés que trabajaba en el CERN (Suiza), propuso una nueva forma de gestionar la enorme cantidad de información en los proyectos del CERN. En ese momento nadie sabía qué era Apache. El desarrollo inicial de la red de documentos con hipervínculos, como los llamó Ted Nelson en 1965, condujo a la creación de la WWW.- el primer software que se lanzó en noviembre de 1990 bajo el nombre de World Wide Web, con un navegador web, interfaz gráfica y editor WYSIWYG. Dos años después, solo había una treintena de entradas en la lista de servidores WWW, entre las que se encontraba HTTPs NCSA.
La verdadera historia de Apache comienza en marzo de 1995 con el lanzamiento de Apache 0.2 basado en el servidor NCSA HTTPD 1.3. Muchos usuarios están interesados en saber qué es Apache hoy y cómo era el programa en los primeros meses de su existencia. Era solo un conjunto de ediciones aplicadas al servidor NCSA. A continuación, Robert Thau lanzó Shambhala 0.1 con API para módulos que demostraron ser muy exitosos.
Los hitos más importantes del proyecto fueron el pleno cumplimiento del estándar HTTP 1.1, que se incluyó en abril de 1997 como versión 1.2. Esta versión ya incluía la plataforma Windows NT, que se lanzó en julio de 1997. La combinación de archivos de configuración se implementó en la versión 1.3.3.
Apache Group es responsable de la evolución del servidor web y de las decisiones específicas de desarrollo. Este grupo debe distinguirse de los desarrolladores principales: grupo principal. La naturaleza voluntaria de la mayoría de los desarrolladores hace que sea poco probable que todos estén activos en Apache al mismo tiempo, por lo que el núcleo es responsable de mantenerlo en funcionamiento. En general, las decisiones que los desarrolladores deben tomar pertenecen al núcleo y se limitan a votos para incluir el código. Por otro lado, suelen tener acceso de escritura al repositorio de CVS, por lo que actúan como puerta de entrada al código, asegurándose de que sea correcto y de buena calidad.
Requisitos mínimos ybeneficios
Apache ha ganado una amplia aceptación en la web y ha sido el servidor HTTP más utilizado desde 1996. Alcanzó su participación de mercado más alta en 2005 cuando el servidor fue utilizado por el 70% de los sitios en todo el mundo. En los últimos años, su cuota de mercado ha disminuido. Cabe señalar que, para Apache, tal declive no indica la impopularidad y degradación de la tecnología.
Requisitos mínimos de funcionamiento:
- Procesador - Pentium.
- RAM - 64 MB.
- OS-Microsoft Windows, GNU/Linux.
- Tamaño de la instalación: 50 MB.
Beneficios:
- Diseño modular.
- Código abierto.
- Diseño multiplataforma.
- Extensibilidad.
- Popular: fácil de obtener ayuda y soporte.
Arquitectura del servidor
El servidor modular Apache consta de una sección principal y varios módulos que proporcionan la mayor parte de la funcionalidad básica. Algunos de estos módulos:
- mod_ssl - comunicación segura sobre TLS;
- mod_rewrite: reescritura de direcciones, comúnmente utilizada para convertir páginas dinámicas como php en páginas estáticas para engañar a los motores de búsqueda sobre dónde fueron diseñadas;
- mod_dav - Compatibilidad con el protocolo WebDAV (RFC 2518);
- mod_deflate - el algoritmo de compresión es transparente cuando el contenido se envía al cliente;
- mod_auth_ldap - permite a los usuarios autenticarse en un servidor LDAP;
- mod_proxy_ajp -conector para comunicarse con páginas dinámicas Jakarta Tomcat en Java (servlets y JSP).
El servidor base se puede ampliar para incluir módulos externos, incluidos:
- mod_cband - control de tráfico y limitación de ancho de banda;
- mod_perl - dinámico en Perl;
- mod_php - dinámico en PHP;
- mod_python - dinámico en Python;
- mod_rexx - dinámico en REXX y objeto REXX;
- mod_ruby - dinámico en Ruby;
- mod asp dot net - dinámico en Microsoft. NET;
- mod_mono - dinámico a mono;
- mod_security - Filtrado a nivel de aplicación para seguridad.
Configuración y seguridad
Para comprender qué es Apache en términos de seguridad, debe considerar su configuración. La mayor parte de la configuración se realiza en los archivos apache2.conf y httpd.conf, según el sistema en el que se ejecuta el software. Cualquier cambio en este archivo requiere reiniciar el servidor o forzar la lectura nuevamente.
La licencia de software bajo la cual se distribuye el software principal de Apache es un sello distintivo de la historia de Apache HTTP Server y de la comunidad de código abierto. La licencia permite la distribución de productos de código abierto y cerrado.
La Free Software Foundation no considera que la Licencia Apache sea compatible con la versión 2 de la Licencia Pública General GNU (GPL), en la que el software tiene licencia y no está integrado con el software. Esto debe tenerse en cuenta antesconfigurar un servidor web Apache distribuido bajo la licencia GPL. Sin embargo, la versión 3 de la GPL incluye una disposición que le permite ser compatible con licencias que tienen cláusulas de indemnización de patentes.
La mayoría de las vulnerabilidades de seguridad descubiertas y reparadas solo pueden ser explotadas por usuarios locales, no de forma remota. Sin embargo, algunos todavía se ejecutan de forma remota en ciertas situaciones. O si son utilizados por usuarios locales maliciosos para violar los acuerdos de alojamiento compartido utilizando PHP como un módulo del servidor web gratuito Apache.
Comprobando el funcionamiento de Apache
Para asegurarse de que Apache funciona correctamente, abra un navegador web y escriba la siguiente dirección: https://localhost. Luego presione Entrar, aparece una página en blanco con el mensaje "Esto está funcionando", lo cual es una prueba de que el servidor web funciona bien.
Apache te permite crear configuraciones personalizadas para personalizar y adaptar a tus necesidades. Para hacer esto, busque el archivo http.conf en C:appserv Apache2.2 conf. Se hace una copia de seguridad para evitar errores de tiempo de ejecución, luego se abre con cualquier editor y se cambian las líneas necesarias.
Para realizar estos pasos correctamente, debe tener un buen conocimiento del trabajador de Apache, ya que cualquier cambio realizado se reflejará en el rendimiento y el inicio de Apache. Gracias a las últimas recomendaciones, el servidor estará instalado. Funcionará en una configuración básica que le permite descargarpáginas o aplicaciones de red en Internet.
Gestión de la información
Apache es el servidor web más utilizado, el líder con más instalaciones en el mundo, muy por delante de otras soluciones como Microsoft Internet Information Server (IIS). Este proyecto está abierto para su uso porque es multiplataforma, tiene versiones para los principales sistemas operativos, es muy confiable y se destaca por su seguridad y rendimiento.
La computadora en la que se ejecuta este software recibe el mismo nombre. Este es fundamental ya que se encarga de aceptar las solicitudes de página provenientes de los visitantes que acceden al sitio y gestionar su envío o rechazo de acuerdo con la política de seguridad establecida. Aunque este proceso puede parecer sencillo, incluye muchos aspectos y funciones que se deben completar:
- Rendimiento de consulta.
- Una gran cantidad de solicitudes HTTP, incluida la multitarea, puede dejar el servicio colapsado.
- Restricciones de acceso a archivos, control de autenticación de usuarios o filtrado de solicitudes según su origen.
- Manejo de errores en las páginas de información del visitante y redirección a páginas predefinidas.
- Gestionar la información a transmitir según su formato e informar adecuadamente al navegador que solicita el recurso especificado.
- Registro de gestión para almacenar solicitudes recibidas, errores que ocurrieron yen general, toda la información que sea registrada y analizada para obtener estadísticas de acceso al sitio.
Apache le permite configurar un alojamiento virtual basado en direcciones IP o nombres, es decir, tener varios sitios web en una computadora.
Archivo apache2.conf
Sin duda, apache2.conf es el archivo más importante, ya que define el comportamiento general de las páginas web y también se encarga de acceder a varios módulos que amplían la funcionalidad del servidor.
Se encuentra en el directorio /etc/apache2 y dado que es un archivo de texto, se puede editar fácilmente con un editor de texto. Propiedades del archivo de configuración: variables globales del servidor y extensiones de funcionalidad.
Las variables de servidor globales son variables que definen el funcionamiento general:
- Tabla de directivas de Apache. El nombre del servidor se indica mediante la variable ServerName, por lo que cualquier redirección o enlace que exista en los documentos HTML funciona bien. La mayoría de las variables de configuración se distribuyen entre otros archivos pequeños almacenados en mods disponibles.
- .htaccess es un archivo de texto oculto que le permite personalizar el funcionamiento del servidor.
- "Apache" es un directorio específico sin tener que modificar el archivo de configuración principal apache2.conf. Cuando un cliente web solicita un archivo del servidor, busca desde el directorio raíz hasta el subdirectorio que contiene el.htaccess solicitado y tiene en cuenta las directivas que contiene antes de realizar la solicitud.
Principio.htaccess:
- Prohibe listar archivos en el directorio.
- Redirige el tráfico web.
- Configura páginas de error.
- Restringir el acceso a ciertos archivos.
- Denegar el acceso a direcciones IP específicas o rangos de direcciones IP.
- Amplía la funcionalidad relacionada con otras llamadas a módulos y archivos de configuración. Todas las directivas asociadas con este elemento estarán precedidas por la palabra "Habilitar".
Instalación del servidor web Apache
Apache fue diseñado originalmente para trabajar con tecnología PHP, pero también puede funcionar con. NET sin problemas, lo que lo hace más exitoso que IIS de Microsoft, que es un colaborador para servidores que usan IIS y brinda soporte completo PHP sin tener que cambiar la configuración.
Para instalar y ejecutar un servidor web, primero debe descargarlo del sitio oficial. Busque siempre la última versión del software disponible y compruebe si se identificará como Win32 Binary, incluido OpenSSL.
La versión tiene un sistema integrado de instalación y protección de datos. Una vez seleccionado, se descarga al PC. Haz doble clic en el icono del archivo para iniciar el proceso, que es sencillo ya que va acompañado de un asistente.
Una de las primeras ventanas que brindará la información necesaria para que el servidor web pueda conectarse a la red es la ventana de información. Allí, el usuario completa un breve formulario agregando el nombre de dominio de la red, el nombre del servidor y la dirección de correo electrónico.administrador. Para las dos primeras opciones elija localhost.
A continuación, aparecerá la ventana de instalación, donde se enumeran todos los componentes disponibles. Selecciónelos todos y compruebe si existe la carpeta c:appserv Apache2.2. A continuación, configure el servidor web Apache.
Web Monitor en la barra de tareas
Después de instalar Apache, asegúrese de que se haya hecho correctamente. Para hacer esto, vaya al menú "Inicio" y busque la opción "Ejecutar". Aparecerá una ventana emergente en la que ingresa cmd, aparece una pantalla emergente del sistema. Para asegurarse de que el usuario se está ejecutando como administrador, haga clic con el botón derecho en la ventana y seleccione "Ejecutar como administrador".
Algoritmo de instalación:
- Encuentre la carpeta bin de Apache en la consola de Windows, para hacer esto, escriba la siguiente oración en la consola - c: appserv Apache2.2? pulg.
- Después de ingresar, presione Entrar y el componente del sistema se verá así: C: appserv Apache2.2? En>.
- En la carpeta bin, escriba http:.exe -k install y presione Entrar.
- Aparecerá un mensaje similar a ". Apache 2.2: servicio ya instalado". Este mensaje verificará que Apache se instaló correctamente.
Una de las formas más eficaces de comprobar si Apache se está ejecutando correctamente es comprobar si el monitor de aplicaciones está activo. Se puede ver en la barra de tareas. Si no está activo, actívelo yendo al menú Inicio, Todos los programas y Apache http Server 2.2., haga clic en Monitor Apache Server y actívelo.
Monitor es útil porque te permite detener el servidor,pausa y actívalo con total comodidad sin ir a la ventana de la consola, simplemente haciendo clic en el icono de la barra de tareas para abrir la ventana de control.
Consejos de instalación de Linux
Si un usuario tiene un sitio web y necesita una plataforma para alojarlo, puede utilizar los servicios de uno de los proveedores de alojamiento o intentar alojar su sitio web en el servidor usted mismo.
Algoritmo de instalación:
- Descargue la última versión estable de Apache.
- Descargar archivos fuente según el sistema.
- Extraer archivos de software.
- Después de eso, será necesario descomprimir los archivos descargados: gunzip -d httpd-2_0_NN.tar.gz; alquitrán xvf
- Esto crea un nuevo directorio en el directorio actual con los archivos fuente.
- Tan pronto como aparezcan los archivos, dígale a la máquina dónde encontrar todos los originales. La forma más fácil de hacer esto es aceptar todos los valores predeterminados y simplemente escribir:./configure.
- Configure Apache, siempre que no haya problemas con la instalación y compilación. El usuario ajusta la configuración, lo que equivale a editar el archivo httpd.conf. Por lo general, se edita con un editor de texto: vi PREFIX /conf/httpd.conf. Debe ser usuario root para realizar cualquier cambio.
- Comprobar el funcionamiento del servidor.
Aplicación en la World Wide Web
Apach se utiliza principalmente para enviar páginas estáticas y dinámicas a la World Wide Web. Muchas aplicaciones están diseñadas conLos entornos de implementación de Apache o utilizarán las características de este servidor. Apache es un componente de servidor en la popular plataforma de aplicaciones LAMP junto con los lenguajes de programación MySQL y PHP, Perl, Python y Ruby, incluida la base de datos Oracle y el servidor de aplicaciones IBM WebSphere. Mac OS X lo integra como parte de su propio servidor web y soporte para aplicaciones WebObjects.
Apache se utiliza para muchas otras tareas en las que es necesario acceder al contenido de forma segura y fiable. Por ejemplo, al compartir archivos desde una computadora personal a Internet. Un usuario que tiene Apache instalado en su escritorio puede colocar archivos de forma arbitraria en la raíz del documento, desde donde se pueden compartir.
Los desarrolladores de aplicaciones web a veces usan una versión local de Apache para obtener una vista previa y probar el código durante el desarrollo. Microsoft Internet Information Services (IIS) es el principal competidor de Apache, así como el servidor web Sun Java System de Sun Microsystems y muchas otras aplicaciones como el servidor web Zeus.
Algunos de los sitios web más grandes del mundo funcionan con Apache. El front-end del motor de búsqueda de Google se basa en una versión modificada del mismo llamada Google Web Server (GWS). Muchos proyectos de Wikipedia también se ejecutan en servidores Apache.