El servidor HTTP Apache es un servidor web HTTP  para plataformas Unix (BSD, GNU/Linux, etc.), Microsoft Windows, Macintosh y otras, que implementa el protocolo HTTP.

Módulos:

  • mod_ssl – Comunicaciones Seguras vía TLS.
  • 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_dav – Soporte del protocolo WebDAV (RFC 2518).
  • mod_deflate – Compresión transparente con el algoritmo deflate del contenido enviado al cliente.
  • mod_auth_ldap – Permite autentificar usuarios contra un servidor LDAP.
  • 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_perl – Páginas dinámicas en Perl.
  • mod_php – Páginas dinámicas en PHP.
  • mod_python – Páginas dinámicas en Python.
  • mod_rexx – Páginas dinámicas en REXX y Object REXX.
  • mod_ruby – Páginas dinámicas en Ruby.
  • mod_aspdotnet – Páginas dinámicas en .NET de Microsoft (Módulo retirado).
  • mod_mono – Páginas dinámicas en Mono
  • mod_security – Filtrado a nivel de aplicación, para seguridad.

¿Es Software Libre?

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.

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. 🙂

INSTALACION:

$sudo aptitude install apache2

Una vez terminada la instalación puedes comprobar que Apache funciona correctamente:

  • Si estás en la misma máquina donde instalaste Apache, coloca en la barra de direcciones de tu navegador:
http://localhost o http://127.0.0.1
  • Si te encuentras en una máquina distinta a la que instalaste Apache, debes colocar en la barra de direcciones de tu navegador:
http://192.168.0.1

donde debes reemplazar 192.168.0.1 por la IP de la máquina en la que instalaste Apache. Esto te llevará a una página que nos redireccionará a http://localhost/apache2-default/ o http://192.168.0.1/apache2-default/, dependiendo del caso, la cual nos indicará que el Servidor Apache ha sido instalado correctamente.

Resetear el servidor Apache

Una vez efectuado algún cambio de las configuraciones es conveniente resetear el servidor Apache, para ello, en una consola escribimos :

$sudo /etc/init.d/apache2 restart

Instalar phpmyadmin

Aunque con la sola instalación de este paquete ya tendrías el servidor http Apache corriendo en tu sistema normalmente necesitarás para sacarle todo el provecho instalar también php. Veamos como hacerlo.

instalar phpmyadmin

abres una consola te logueas como root

$sudo aptitude install php5

resetea apache2

$sudo /etc/init.d/apache2 restart

instala algunos paquetes

$sudo aptitude install mysql-server
$sudo aptitude install libapache2-mod-auth-mysql
$sudo aptitude install php5-mysql

le colocas contraseña a phpmyadmin antes de instalar

Y vemos que todo trabaja bien,  nuestro php 5 esta OK

$sudo mysqladmin -u root password contraseña

instalar phpmyadmin

$sudo aptitude install phpmyadmin

creas un fichero

$sudo gedit /var/www/index.php

en el fichero le colocas lo siguiente

<?php phpinfo(); ?>

reseteas apache

$sudo /etc/init.d/apache2 restart

y abres tu navegador escribes http://localhost/index.php
y listo

LIBERAR PUERTO 80 ROUTER:

si tu servidor esta conectado a un Router debes liberar el puerto 80 para que desde otras pc por 1/2 de internet vean las pag web que contiene tu server..

ingresamos al panel de control del router, en mi caso (D-link DI 524), coloco en la barra de buscadores web 192.168.0.01 e ingreso mi usuario.

Agregar un servidor virtual, le asignamos un nombre y en la opción “ip privada” le asignamos los 3 últimos números de la ip de nuestra pc (podemos ver nuestra ip colocando en la terminal  ” ifconfig ” buscar donde dice algo así: Direc. Inet:192.168.0.147, el numero puede cambiar ya q ese es de mi pc) , le asignamos al puerto publico el numero 80… el puerto privado yo lo deje como 80 también pero no es condición… al tipo de puerto le asignamos “TCP”, en Shudle colocamos “always” y aplicar.

con eso ya tendríamos liberado el puerto del Router para conectarnos a nuestro server Web desde internet o desde otros pc (por 1/2 de internet), etc.

ahora para conectare a tu server Web desde un buscador Web basta con colocar la IP de tu server en el URL y listo… (puedes ver tu ip colocando en algun buscador “MI IP”).

(NEW) Activar CGI en Apache2:

Después de un ratotote buscando como activar el CGI en apache para hacer web interactivas en el servidor… con la
ayuda de un amigo… llegamos a esto:

-existe una carpeta en /usr/lib/cgi-bin… buscala.. alli puedes guardar tus programas para realizar web dinámicas

-ahora si quieres tener la carpeta cgi-bin en tu carpeta www (ubicada en : var/www) , la tenemos que crear en www, y enlazar con el cgi-gin ubicado en /usr/lib/.

$cd /var/www

$sudo mkdir cgi-bin

$ln -s var/www/cgi-bin/ /usr/lib/cgi-bin

$ln -s /usr/lib/cgi-bin var/www/

y con eso estamos listos!

Prueba creando un programa que genere una web dinámica pon el programa en la carpeta cgi-bin, y prueba lo con http://tu.ip/cgi-bin/programa

y listo!