Apache 2 Breve resumen Apache 2.2 Breve resumen Índice 1 Instalación y configuracion por defecto..................................................................................................2 1.1 Instalación...........................................................................................................................................2 1.2 Servidor virtual por defecto.............................................................................................................5 2 Configuraciones básicas............................................................................................................................7 3 Directorios personales de usuario...........................................................................................................7 1 Instalación y configuracion por defecto 1.1 Instalación En Debian 7, se instala la versión 2.2 # apt-cache policy apache2 apache2: Instalados: (ninguno) Candidato: 2.2.22-13+deb7u6 Actualizar información de paquetes de repositorios e instalar. #apt-get update #apt-get install apache2 Archivos de configuración. # ls -l /etc/apache2/ total 72 -rw-r--r-- 1 root root 9640 ago 18 09:35 apache2.conf drwxr-xr-x 2 root root 4096 feb 5 13:18 conf.d -rw-r--r-- 1 root root 1465 ago 18 09:35 envvars -rw-r--r-- 1 root root 31063 ago 14 22:41 magic drwxr-xr-x 2 root root 4096 feb 5 13:18 mods-available drwxr-xr-x 2 root root 4096 feb 5 13:18 mods-enabled -rw-r--r-- 1 root root 750 ago 18 09:35 ports.conf drwxr-xr-x 2 root root 4096 feb 5 13:18 sites-available drwxr-xr-x 2 root root 4096 feb 5 13:18 sites-enabled --1/6-- Apache 2 Breve resumen Extractos de algunos de los ficheros. apache2.conf KeepAlive On Include httpd.conf Include ports.conf Include sites-enabled/ ports.conf NameVirtualHost *.80 Listen 80 <IfModule mod_ssl.c> Listen 443 </IfModule> mods_enabled/alias.load Enlace simbólico a mods_available/alias.load mods_enabled/alias.conf Enlace simbólico a mods_available/alias.conf --2/6-- Apache 2 Breve resumen sites-available/default <VirtualHost *:80> DocumentRoot /var/www … </VirtualHost> sites-enabled/000-default Enlace simbólico a sites-available/default Comprobar puerto HTTP abierto con netstat. 1.2 Servidor virtual por defecto Comprobar que existe una página web principal predeterminada en /var/www Comprobar que el servidor funciona correctamente abriendo el navegador y accediendo a http://localhost Archivo de configuración /etc/apache2/sites-available/default <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> --3/6-- Apache 2 Breve resumen ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> Directivas importantes Contenedor que aloja toda la configuración que afecta a este sitio web. Por defecto, recién instalado Apache, es el único que hay. Atiende peticiones por todas sus interfaces/IPs por el puerto 80. <VirtualHost *:80> … </VirtualHost> Directorio raíz del sitio web. DocumentRoot /var/www Los contenedores <Directory ruta> … </Directory> alojan todas las directivas que se aplicarán sobre un directorio y sus subdirectorios. Si queremos aplicar directivas específicas y diferentes para un subdirectorio, basta con crear un nuevo contenedor para ese subdirectorio. Si no existe una web predeterminada, se muestra el contenido del directorio. Options Indexes Se permite el acceso desde cualquier máquina/IP. Order allow,deny allow from all El archivo de log de errores se encuentra en /var/log/apache2/error.log y el log de accesos en /var/log/apache2/access.log ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log --4/6-- Apache 2 Breve resumen 2 Configuraciones básicas Web predeterminada: si un usuario accede a un directorio sin especificar el archivo, el servidor le mostrará la web default.htm. DirectoryIndex default.htm Código de error 403: Acceso prohibido. Si un usuario accede a un directorio sin especificar el archivo y dicho directorio no contiene una web predeterminada, le mostrará el mensaje Forbidden (Prohibido) Options FollowSymLinks MultiViews #No existe la directiva Indexes Código de error 404: página no encontrada. Si un usuario solicita una web que no existe, el servidor no mostrará el mensaje Not found (No encontrada) sino el texto “Lo sentimos, esta web no se encuentra en nuestro servidor” ErrorDocument 404 “Lo sentimos, esta web no se encuentra en nuestro servidor” Código de error 404: página no encontrada. Si un usuario solicita una web que no existe, el servidor no mostrará el mensaje Not found (No encontrada) sino la web personalizada /var/www/web_inexistente.html ErrorDocument 404 /web_inexistente.html 3 Directorios personales de usuario Módulo userdir. Permite que todo usuario del sistema tenga su propio espacio web. Por ejemplo, el usuario manolo tendrá su espacio web en la carpeta /home/manolo/public_html (el propio usuario deberá crear la carpeta public_html) y se podrá acceder a él mediante la URL http://servidor/~manolo Comprobar que no está ya habilitado el módulo userdir observando el contenido de la carpeta /etc/apache2/mods-enabled. Habilitar el módulo. #a2enmod userdir Si quisiérámos deshabilitarlo. #a2dismod userdir --5/6-- Apache 2 Breve resumen Comprobar que se han creado los enlaces correspondientes en mods-enabled hacia los archivos de mods-available. Crear una web, alojarla en el directorio del usuario y comprobar que ya se puede acceder en el navegador. Aula 30x [email protected] @aula30x --6/6--