La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1 Administración Servidores Web Apache José Juan Cerpa Ortega Universidad de Las Palmas de Gran Canaria.

Presentaciones similares


Presentación del tema: "1 Administración Servidores Web Apache José Juan Cerpa Ortega Universidad de Las Palmas de Gran Canaria."— Transcripción de la presentación:

1 1 Administración Servidores Web Apache José Juan Cerpa Ortega Universidad de Las Palmas de Gran Canaria

2 2 Terminología Tecnología cliente/servidor Tecnología cliente/servidor Servidor Web Servidor Web DNS (Domain name server) DNS (Domain name server) Dirección IP Dirección IP Puerto Puerto Sockets Sockets Protocolo (Hipertext Transfer Protocol) Protocolo (Hipertext Transfer Protocol)

3 3 Apache Proceso principal, que genera copias de si mismo. Proceso principal, que genera copias de si mismo. Servicio httpd (start/stop/restart) Servicio httpd (start/stop/restart) Configuración a través de directivas (/etc/httpd/conf/httpd.conf) Configuración a través de directivas (/etc/httpd/conf/httpd.conf) Módulos Módulos

4 4 Instalación Descargar el fuente de www.apache.org Descargar el fuente de www.apache.orgwww.apache.org Descomprimir tar –zxvf apache_x.y.z.tar.gz Descomprimir tar –zxvf apache_x.y.z.tar.gz./configure (prepara el fichero makefile)./configure (prepara el fichero makefile) Make (genera el ejecutable para instalar, a partir del fuente, las bibliotecas y las reglas adoptadas en makefile) Make (genera el ejecutable para instalar, a partir del fuente, las bibliotecas y las reglas adoptadas en makefile) Make install (instala apache) Make install (instala apache)

5 5 Instalación./configure –help ( para ver opciones de configuración de la instalación)./configure –help ( para ver opciones de configuración de la instalación) Por defecto se instalan una serie de módulos. Para verlos #httpd -1 Por defecto se instalan una serie de módulos. Para verlos #httpd -1 La idea de modularizar apache viene de la necesidad de incorporar funciones al servidor de manera sencilla y eficaz. Los módulos permiten integración de bases de datos, búsquedas de datos, autentificación. La idea de modularizar apache viene de la necesidad de incorporar funciones al servidor de manera sencilla y eficaz. Los módulos permiten integración de bases de datos, búsquedas de datos, autentificación.

6 6 Principios Básicos Directivas : variables que controlan el comportamiento del servidor. Directivas : variables que controlan el comportamiento del servidor. Todo lo que este después de # en una línea será ignorado. (comentarios) Todo lo que este después de # en una línea será ignorado. (comentarios) Secciones de httpd.conf Secciones de httpd.conf Sección 1: Afectan a todo el servidor. Sección 1: Afectan a todo el servidor. Sección 2: Comportamiento predeterminado del servidor. Sección 2: Comportamiento predeterminado del servidor. Sección 3: Específicas para hosts virtuales. Sección 3: Específicas para hosts virtuales.

7 7 Sección 1: Directivas globales ServerType inetd/standalone : Indica si el servidor se ejecuta de forma independiente (standalone) o a través del demonio inetd (inetd). ServerType inetd/standalone : Indica si el servidor se ejecuta de forma independiente (standalone) o a través del demonio inetd (inetd). ServerRoot /ruta : Ubicación raíz del servidor Apache en el árbol de directorios. ServerRoot /ruta : Ubicación raíz del servidor Apache en el árbol de directorios. Timeout sg : Tiempo máximo que mantiene una conexión activa. Evita bloqueos. Timeout sg : Tiempo máximo que mantiene una conexión activa. Evita bloqueos.

8 8 Sección 1: Directivas globales MaxClients nº : Límite máximo de clientes conectados a la vez al servidor. Evita ataques de denegación de servicio. MaxClients nº : Límite máximo de clientes conectados a la vez al servidor. Evita ataques de denegación de servicio. Listen x.x.x.x / nº / x.x.x.x:nº : Indica la IP y/o puerto donde se controlarán las solicitudes de los clientes. Pueden existir varias. Listen x.x.x.x / nº / x.x.x.x:nº : Indica la IP y/o puerto donde se controlarán las solicitudes de los clientes. Pueden existir varias. BindAddress x.x.x.x / www.ulpgc.es / * : similar a listen pero permite nombres de dominio y el comodín *. Solo puede haber una. BindAddress x.x.x.x / www.ulpgc.es / * : similar a listen pero permite nombres de dominio y el comodín *. Solo puede haber una.www.ulpgc.es

9 9 Sección 1: Directivas globales LoadModule nom_mod /ruta_mod: Carga módulos compilados pasando el nombre y la ruta del módulo. LoadModule nom_mod /ruta_mod: Carga módulos compilados pasando el nombre y la ruta del módulo. Directivas contenedoras Directivas contenedoras … : Aplica las directivas al directorio especificado. … : Aplica las directivas al directorio especificado. … : Idem que la anterior pero la ruta permite expresiones regulares. … : Idem que la anterior pero la ruta permite expresiones regulares.

10 10 Sección 1: Directivas globales Directivas contenedoras Directivas contenedoras y : Igual que pero la ruta es una URL. y : Igual que pero la ruta es una URL. y : Igual que pero aplicada a ficheros. y : Igual que pero aplicada a ficheros.

11 11 Sección 2 : Directivas Servidor principal Port nº: Indica los puertos por los que el servidor escucha solicitudes. Port nº: Indica los puertos por los que el servidor escucha solicitudes. User nom_usery Group nom_grp : Indican con que usuario y grupo se llama al proceso httpd. Por seguridad usar en ambos Apache. User nom_usery Group nom_grp : Indican con que usuario y grupo se llama al proceso httpd. Por seguridad usar en ambos Apache. ServerAdmin email : Se mostrará esta dirección para que puedan escribir en caso de algún error. ServerAdmin email : Se mostrará esta dirección para que puedan escribir en caso de algún error. ServerName nom_serv : Nombre de la máquina. No es recomendable usar el verdadero. ServerName nom_serv : Nombre de la máquina. No es recomendable usar el verdadero.

12 12 Sección 2 : Directivas Servidor Principal DocumentRoot /ruta : Ruta donde estarán los documentos accesibles por los clientes. DocumentRoot /ruta : Ruta donde estarán los documentos accesibles por los clientes. : Directiva contenedora que ejecuta su contenido si existe el módulo especificado. : Directiva contenedora que ejecuta su contenido si existe el módulo especificado. UserDir directorio / enable users / disable users : Habilita las páginas de inicio en usuarios del sistema. Permite el uso del comodín * en las rutas. UserDir directorio / enable users / disable users : Habilita las páginas de inicio en usuarios del sistema. Permite el uso del comodín * en las rutas.

13 13 Sección 2 : Directivas Servidor Principal DirectoryIndex docs : Documentos por defecto que apache buscará en los directorios si no se especificaran. Por defecto index.html DirectoryIndex docs : Documentos por defecto que apache buscará en los directorios si no se especificaran. Por defecto index.html AddModule módulo : Permite el uso de módulos compilados pero que aún no están activos. AddModule módulo : Permite el uso de módulos compilados pero que aún no están activos. AddType aplicación extensión : Crea una asociación directa entre el tipo de archivo MIME (Multimedia Internet Mail Extensions) y la extensión del archivo. AddType aplicación extensión : Crea una asociación directa entre el tipo de archivo MIME (Multimedia Internet Mail Extensions) y la extensión del archivo.

14 14 Sección 2 : Directivas Servidor Principal DefaultType aplicación : En caso de no saber asociar el tipo de archivo por su extensión usará uno por defecto. Normalmente Text/plain. DefaultType aplicación : En caso de no saber asociar el tipo de archivo por su extensión usará uno por defecto. Normalmente Text/plain. ErrorLog /ruta : Graba información sobre los eventos del servidor en el archivo especificado. ErrorLog /ruta : Graba información sobre los eventos del servidor en el archivo especificado. LogLevel tipo : Apache reconoce 8 niveles de error distintos para determinar la cantidad de información a almacenar. LogLevel tipo : Apache reconoce 8 niveles de error distintos para determinar la cantidad de información a almacenar.

15 15 Sección 2 : Directivas Servidor Principal LogLevel Tipo : Los tipos pueden ser… LogLevel Tipo : Los tipos pueden ser… Debug : Graba todo. Debug : Graba todo. Info : Solo mensajes informativos. Info : Solo mensajes informativos. Notice : Importantes pero no vitales. Notice : Importantes pero no vitales. Warn : Advertencia, quizás importantes.* Warn : Advertencia, quizás importantes.* Error : Fallo. Necesario hacer algo.* Error : Fallo. Necesario hacer algo.* Crit : Error grave. Hacer algo rápidamente. Crit : Error grave. Hacer algo rápidamente. Alert : Apocalíptico. Alert : Apocalíptico. Emerg : Emergencia total. Emerg : Emergencia total.

16 16 Sección 2: Directivas Servidor Principal TransferLog /ruta : Graba información acerca de los datos que se transfieren al servidor y desde este. No necesario ya que carga al servidor. Por defecto se almacena : Host, Ident de usuario, fecha, bytes transmitidos … TransferLog /ruta : Graba información acerca de los datos que se transfieren al servidor y desde este. No necesario ya que carga al servidor. Por defecto se almacena : Host, Ident de usuario, fecha, bytes transmitidos … LogFormat “Tipos = %X …” nomb: Permite personalizar el formato de los archivos de registro. LogFormat “Tipos = %X …” nomb: Permite personalizar el formato de los archivos de registro. CustomLog /ruta nomb : Crea el fichero de log con el formato especificado con nomb. CustomLog /ruta nomb : Crea el fichero de log con el formato especificado con nomb.

17 17 Sección 2 : Directivas Servidor Principal LogFormat “Tipos = %X …” nomb: Ejemplos de variables para el formato. LogFormat “Tipos = %X …” nomb: Ejemplos de variables para el formato. %A : Dirección IP local %A : Dirección IP local %a : Dirección IP remota %a : Dirección IP remota %f : Ruta del documento solicitado %f : Ruta del documento solicitado %p : Puerto TCP del que se recibió la solicitud %p : Puerto TCP del que se recibió la solicitud %t : Fecha y hora de la solicitud %t : Fecha y hora de la solicitud %T : Tiempo usado para procesar la solicitud %T : Tiempo usado para procesar la solicitud %u : Usuario remoto en solicitudes autentificadas %u : Usuario remoto en solicitudes autentificadas %v : Nombre del servidor %v : Nombre del servidor

18 18 Sección 2 : Directivas Servidor Principal Options +-valor : Cláusula del contenedor. La última opción sobre el mismo directorio anula a la anterior. + añade la opción y – la elimina. Algunos valores para options. Options +-valor : Cláusula del contenedor. La última opción sobre el mismo directorio anula a la anterior. + añade la opción y – la elimina. Algunos valores para options. All : Permite todas las opciones. All : Permite todas las opciones. ExecCGI : Permite creación de scripts CGI. ExecCGI : Permite creación de scripts CGI. FollowSymLinks : Permite seguir enlaces simbólicos. FollowSymLinks : Permite seguir enlaces simbólicos. Includes : Permite el uso de includes. Includes : Permite el uso de includes. Indexes : Mostrará el contenido del directorio si no existe documento por defecto para cargar. Indexes : Mostrará el contenido del directorio si no existe documento por defecto para cargar.

19 19 Sección 2 : Directivas Servidor Principal AllowOverride opciones : Indica los permisos para buscar archivos.htaccess en los subdirectorios. Anula especificaciones Options directorio a directorio. AllowOverride opciones : Indica los permisos para buscar archivos.htaccess en los subdirectorios. Anula especificaciones Options directorio a directorio. All : activa todas las anulaciones. All : activa todas las anulaciones. AuthConfig : Permite uso de directivas de autorización. AuthConfig : Permite uso de directivas de autorización. FileInfo : Permite directivas que controlan el tipo de documentos. FileInfo : Permite directivas que controlan el tipo de documentos. Indexes : Directivas para el control de indexación de directorios. Indexes : Directivas para el control de indexación de directorios. Limit : Directivas para el control de acceso. Limit : Directivas para el control de acceso. Options : Control de las características específicas de directorios. Options : Control de las características específicas de directorios. None : Desactiva las anulaciones. Mejora el rendimiento. None : Desactiva las anulaciones. Mejora el rendimiento.

20 20 Sección 2 : Directivas Servidor Principal Order Allow, Deny / Deny, Allow : Proporciona un mecanismo de control de acceso. Order Allow, Deny / Deny, Allow : Proporciona un mecanismo de control de acceso. Allow, Deny : Permite acceso a cualquiera que no este en la lista de denegaciones. Allow, Deny : Permite acceso a cualquiera que no este en la lista de denegaciones. Allow from all Allow from all Deny from x.x.x.x ulpgc.es Deny from x.x.x.x ulpgc.es Deny, Allow : Se deniega el acceso a cualquiera que no se lo tenga permitido. Deny, Allow : Se deniega el acceso a cualquiera que no se lo tenga permitido. Deny from all Deny from all Allow from x.x.x.x ulpgc.es Allow from x.x.x.x ulpgc.es

21 21 Sección 2 : Directivas Servidor Principal AccessFilename.nombre : Si se activa el control de acceso mediante AllowOverride con esta directiva se modifica el nombre del archivo (por defecto.htaccess) donde se encontraran las anulaciones. AccessFilename.nombre : Si se activa el control de acceso mediante AllowOverride con esta directiva se modifica el nombre del archivo (por defecto.htaccess) donde se encontraran las anulaciones.

22 22 Sección 2 : Directivas Servidor Principal Aliases /rutaalias /rutareal (Redirección interna) : Se pueden añadir tantos alias como sean necesarios, sin limites. Redirige de un lugar a otro dentro del propio servidor. Aliases /rutaalias /rutareal (Redirección interna) : Se pueden añadir tantos alias como sean necesarios, sin limites. Redirige de un lugar a otro dentro del propio servidor. ScriptAlias /rutaalias /rutareal : Controla que directorios contienen archivos de comandos del servidor. Igual que los alias excepto que los documentos en el directorio real se tratan como aplicaciones y son ejecutadas por el servidor en lugar de ser envitados al cliente como documentos. ScriptAlias /rutaalias /rutareal : Controla que directorios contienen archivos de comandos del servidor. Igual que los alias excepto que los documentos en el directorio real se tratan como aplicaciones y son ejecutadas por el servidor en lugar de ser envitados al cliente como documentos.

23 23 Sección 2 : Directivas Servidor Principal Redirect URL-vieja URL-nueva : Permite que los clientes sepan que documentos residen en el servidor y cuales no (Redirige a un directorio en otro servidor). Esto permite comunicar a los clientes donde buscar el documento reubicado. Redirect URL-vieja URL-nueva : Permite que los clientes sepan que documentos residen en el servidor y cuales no (Redirige a un directorio en otro servidor). Esto permite comunicar a los clientes donde buscar el documento reubicado.

24 24 Sección 3 : Directivas Servidores Virtuales Alojar distintos sitios en un mismo servidor. Alojar distintos sitios en un mismo servidor. Asegurar que el servidor escucha en las direcciones y puertos correctos. Asegurar que el servidor escucha en las direcciones y puertos correctos. Esto es posible con las directivas contenedoras, Port, Listen… Esto es posible con las directivas contenedoras, Port, Listen…

25 25 Sección 3 : Directivas Servidores Virtuales Alojamiento Virtual por nombre (Solo compatible con http v1.1) Alojamiento Virtual por nombre (Solo compatible con http v1.1) NameVirtualHost x.x.x.x:port : Indica al servidor que supervise las solicitudes dirigidas a esta dirección. Indica la maquina que va a disponer de los dominios virtuales. NameVirtualHost x.x.x.x:port : Indica al servidor que supervise las solicitudes dirigidas a esta dirección. Indica la maquina que va a disponer de los dominios virtuales. … : Anularán las directivas predeterminadas. Se pueden usar la mayoria de las directivas en su interior. Al menos usar ServerName. … : Anularán las directivas predeterminadas. Se pueden usar la mayoria de las directivas en su interior. Al menos usar ServerName. … : Si una solicitud no coincide con ningun host virtual, se usará esta configuración. … : Si una solicitud no coincide con ningun host virtual, se usará esta configuración.

26 26 Sección 3 : Directivas Servidores Virtuales Namevirtualhost 1.2.3.4 Namevirtualhost 1.2.3.4 Servername www.ferreteriamanolo.com Servername www.ferreteriamanolo.comwww.ferreteriamanolo.com ServerAlias www.ferreteriamanolo.es ServerAlias www.ferreteriamanolo.eswww.ferreteriamanolo.es DocumentRoot /var/www/ferreteriamanolo DocumentRoot /var/www/ferreteriamanolo … Servername www.viveresmartin.com Servername www.viveresmartin.com DocumentRoot /var/www/viveresmartin DocumentRoot /var/www/viveresmartin …

27 27 Sección 3 : Directivas Servidores Virtuales Alojamiento virtual por IP Alojamiento virtual por IP Similar al alojamiento por nombre salvo que no es necesario la directiva NameVirtualHost. Similar al alojamiento por nombre salvo que no es necesario la directiva NameVirtualHost. Ej. Ej. ServerName www.ulpgc.es ServerName www.ulpgc.eswww.ulpgc.es DocumentoRoot /home/ulpgc DocumentoRoot /home/ulpgc ServerAdmin webmaster@ulpgc.es ServerAdmin webmaster@ulpgc.eswebmaster@ulpgc.es ErrorLog /home/ulpgc/logs/errorlog ErrorLog /home/ulpgc/logs/errorlog

28 28 Contenido Dinámico Con Apache es posible de muy diferentes formas, aunque muchas de ellas están desfasadas. Con Apache es posible de muy diferentes formas, aunque muchas de ellas están desfasadas. Includes de Servidor (SSI) Includes de Servidor (SSI) CGI mediante perl o phyton CGI mediante perl o phyton ASP (Limitado ya que pertenece a Microsoft) ASP (Limitado ya que pertenece a Microsoft) PHP (Personal Hipertext Preprocessor)  Potente herramienta para el desarrollo de sitios dinámicos. PHP (Personal Hipertext Preprocessor)  Potente herramienta para el desarrollo de sitios dinámicos.

29 29 Contenido Dinámico Descargar el fuente de www.php.net Descargar el fuente de www.php.netwww.php.net Descomprimir tar –zxvf php_x.y.z.tar.gz Descomprimir tar –zxvf php_x.y.z.tar.gz./configure (prepara el fichero makefile)./configure (prepara el fichero makefile) Make (genera el ejecutable para instalar, a partir del fuente, las bibliotecas y las reglas adoptadas en makefile) Make (genera el ejecutable para instalar, a partir del fuente, las bibliotecas y las reglas adoptadas en makefile) Make install (instala php) Make install (instala php)

30 30 Contenido Dinámico Una vez instalado PHP es necesario indicar a Apache que reconozca ese tipo de documentos. Una vez instalado PHP es necesario indicar a Apache que reconozca ese tipo de documentos. AddType application/x-httpd-php.php AddType application/x-httpd-php.php AddType application/x-httpd-php.phps AddType application/x-httpd-php.phps Una vez hecho los cambios en el fichero de configuración de Apache es necesario reiniciar el servicio para que estos tengan efecto. Una vez hecho los cambios en el fichero de configuración de Apache es necesario reiniciar el servicio para que estos tengan efecto. Service httpd restart Service httpd restart

31 31 Contenido Dinámico Para la realización de sitios dinámicos efectivos es necesario el uso de bases de datos. Para la realización de sitios dinámicos efectivos es necesario el uso de bases de datos. Mysql junto con postgre son dos herramientas potentes de gestión de bases de datos distribuidas con Linux. (gratuitas) Mysql junto con postgre son dos herramientas potentes de gestión de bases de datos distribuidas con Linux. (gratuitas)

32 32 Contenido Dinámico Descargar el fuente de www.mysql.com Descargar el fuente de www.mysql.comwww.mysql.com Descomprimir tar –zxvf mysql_x.y.z.tar.gz Descomprimir tar –zxvf mysql_x.y.z.tar.gz./configure (prepara el fichero makefile)./configure (prepara el fichero makefile) Make (genera el ejecutable para instalar, a partir del fuente, las bibliotecas y las reglas adoptadas en makefile) Make (genera el ejecutable para instalar, a partir del fuente, las bibliotecas y las reglas adoptadas en makefile) Make install (instala mysql) Make install (instala mysql)

33 33 Contenido Dinámico Descomentar la línea del fichero php.ini Descomentar la línea del fichero php.ini Extensión=mysql.so Extensión=mysql.so PHPmyadmin herramienta para gestionar mysql a través de entorno Web. PHPmyadmin herramienta para gestionar mysql a través de entorno Web. Existe una herramienta gráfica en redhat para configurar httpd, pero nunca se aprovechará el máximo rendimiento que ofrece el servidor. Existe una herramienta gráfica en redhat para configurar httpd, pero nunca se aprovechará el máximo rendimiento que ofrece el servidor.

34 34 Contenido Dinámico El funcionamiento se ve en los siguientes pasos: El funcionamiento se ve en los siguientes pasos: El cliente Web hace una petición al servidor Apache (protocolo http y puerto 80). El cliente Web hace una petición al servidor Apache (protocolo http y puerto 80). El servidor Apache reconoce la petición y comprueba que hay un archivo de comandos PHP. El servidor Apache reconoce la petición y comprueba que hay un archivo de comandos PHP. Pasa la ejecución a mod_php del script. Pasa la ejecución a mod_php del script. El archivo de comandos php incluye una serie de ordenes de acceso a la base de datos por lo que pasa la consulta al motor de la base de datos. El archivo de comandos php incluye una serie de ordenes de acceso a la base de datos por lo que pasa la consulta al motor de la base de datos. La base de datos ejecuta la consulta, y los resultados de esta se devuelven al archivo de comandos php que espera los datos devueltos de la consulta. La base de datos ejecuta la consulta, y los resultados de esta se devuelven al archivo de comandos php que espera los datos devueltos de la consulta. El archivo de comandos php con los datos de la consulta montara los datos correspondientes sobre el documento html solicitado por el cliente. El archivo de comandos php con los datos de la consulta montara los datos correspondientes sobre el documento html solicitado por el cliente. Finalmente el servidor apache envía el documento html al cliente. Finalmente el servidor apache envía el documento html al cliente.

35 35 Httpd.conf

36 36 Httpd.conf

37 37 Httpd.conf

38 38 Httpd.conf

39 39 Httpd.conf

40 40 FIN


Descargar ppt "1 Administración Servidores Web Apache José Juan Cerpa Ortega Universidad de Las Palmas de Gran Canaria."

Presentaciones similares


Anuncios Google