1 00:00:01,139 --> 00:00:07,580 En la instalación del servidor de aplicaciones web tenemos que tener en cuenta un conjunto de pautas 2 00:00:07,580 --> 00:00:10,359 antes de comenzar a realizar un nuevo proyecto. 3 00:00:10,980 --> 00:00:20,379 ¿Qué es lo primero que tenemos que comprender antes de poder realizar un proyecto de aplicaciones web? 4 00:00:21,160 --> 00:00:25,679 Lo primero que hay que hacer es lo que se denomina un análisis de requisitos. 5 00:00:25,679 --> 00:00:34,920 En el análisis de requisitos se va a establecer unas condiciones previas sobre las cuales se va a realizar la tarea 6 00:00:34,920 --> 00:00:42,880 A partir de esas condiciones vamos a obtener una base de datos de partida sólida 7 00:00:42,880 --> 00:00:48,659 que va a comprender todos los aspectos necesarios que van a ser muy útiles 8 00:00:48,659 --> 00:00:55,520 tanto en la fase denominada de diseño como en la fase de desarrollo del proyecto 9 00:00:55,520 --> 00:01:07,219 En la fase de análisis de requisitos vamos a determinar cuáles son los aspectos que debe realizar el sistema 10 00:01:07,219 --> 00:01:16,739 Atendiendo a esos aspectos podemos agrupar lo que se llama con el nombre de requisitos en varios tipos 11 00:01:16,739 --> 00:01:26,680 lo que se denominaría requisitos funcionales, que van a especificar aspectos que el sistema debe ser capaz de realizar 12 00:01:26,680 --> 00:01:31,079 y los requisitos denominados no funcionales. 13 00:01:31,599 --> 00:01:41,819 Estos requisitos van a especificar aspectos sobre el propio sistema y además cómo debe realizar las funciones dicho sistema. 14 00:01:41,819 --> 00:01:46,260 algunos ejemplos de requisitos no funcionales son 15 00:01:46,260 --> 00:01:50,840 qué fácil tiene de utilización el sistema o no 16 00:01:50,840 --> 00:01:55,340 cuáles son las opciones respecto a la disponibilidad del sistema 17 00:01:55,340 --> 00:01:59,260 los tipos de mantenimiento, el rendimiento, etc. 18 00:02:00,159 --> 00:02:04,219 Además nos encontramos otro tipo de requisitos 19 00:02:04,219 --> 00:02:09,620 que no están encasillados ni en funcionales ni en no funcionales 20 00:02:09,620 --> 00:02:14,000 que son aquellos que afectan de manera indirecta al sistema. 21 00:02:14,659 --> 00:02:17,939 Por ejemplo, adecuación a la normativa vigente, 22 00:02:18,419 --> 00:02:21,539 compatibilidad con diferentes sistemas operativos, etc. 23 00:02:22,800 --> 00:02:26,939 ¿Cómo preparamos el sistema operativo del servidor? 24 00:02:28,000 --> 00:02:31,939 Antes de proceder a realizar cualquier instalación, 25 00:02:31,939 --> 00:02:38,080 es necesario dar un conjunto de pasos determinados 26 00:02:38,080 --> 00:02:43,639 que nos permita realizar la tarea con la mayor garantía 27 00:02:43,639 --> 00:02:55,020 El primer paso que tenemos que dar es siempre proteger la información que tengamos almacenada en el servidor 28 00:02:55,020 --> 00:03:03,219 ¿Cómo lo hago? Bueno, para ello siempre es necesario contar al menos con una copia de seguridad 29 00:03:03,219 --> 00:03:08,060 lo más reciente posible y además tener en cuenta 30 00:03:08,060 --> 00:03:10,719 que esa copia para que realmente sea eficaz 31 00:03:10,719 --> 00:03:15,060 no debe estar almacenada en el equipo 32 00:03:15,060 --> 00:03:17,759 en el que vayamos a realizar la instalación 33 00:03:17,759 --> 00:03:22,240 Si estamos trabajando con un sistema operativo Windows 34 00:03:22,240 --> 00:03:25,939 siempre es recomendable, previo a cualquier instalación 35 00:03:25,939 --> 00:03:29,580 realizar una defragmentación del disco duro 36 00:03:29,580 --> 00:03:35,060 En el caso de que la unidad por la que vamos a realizar la instalación esté comprimida 37 00:03:35,060 --> 00:03:41,479 siempre es conveniente realizar la descomprección antes de realizar la instalación 38 00:03:41,479 --> 00:03:47,280 Cuando hemos finalizado el proyecto sería conveniente volver a comprimirla 39 00:03:47,280 --> 00:03:52,780 En el caso de que nos encontremos con algún tipo de dispositivo RAI 40 00:03:52,780 --> 00:04:00,439 siempre hay que desmontarlo y posteriormente a la instalación volver a desmontarlo 41 00:04:00,439 --> 00:04:10,599 Cuando nosotros vamos a instalar un servidor web independientemente de sobre qué sistema operativo lo vayamos a hacer 42 00:04:10,599 --> 00:04:18,980 para evitar conflictos con otros servicios semejantes es importante que nosotros nos aseguremos 43 00:04:18,980 --> 00:04:23,720 que no existe ningún otro servicio escuchando por el mismo puerto 44 00:04:23,720 --> 00:04:28,459 que está previsto que escuche el servidor web 45 00:04:28,459 --> 00:04:32,000 Por ejemplo, en el caso del servidor web Apache 46 00:04:32,000 --> 00:04:35,040 deberíamos comprobar cuál es el puerto de escucha 47 00:04:35,040 --> 00:04:38,519 que viene por defecto antes de realizar la instalación 48 00:04:38,519 --> 00:04:41,480 Recordemos además que en un equipo 49 00:04:41,480 --> 00:04:45,720 sólo se puede ejecutar un único servidor web 50 00:04:45,720 --> 00:04:48,220 en un instante determinado 51 00:04:48,220 --> 00:04:56,420 Sin embargo, si lo que necesito es instalar un servidor de base de datos, por ejemplo MySQL 52 00:04:56,420 --> 00:05:05,060 aunque me tengo que garantizar que no existe otro servidor de base de datos o otro servicio escuchando por puerto 53 00:05:05,060 --> 00:05:11,300 recordemos que en el caso de MySQL el puerto de escucha es 3306 54 00:05:11,300 --> 00:05:36,240 A diferencia del servidor web, me puedo encontrar con que puede haber más de un sistema gestor de base de datos ejecutándose en la máquina, aunque siempre tendré que tener en cuenta que si existe más de un sistema gestor de base de datos, lógicamente no puede estar escuchando por el mismo puerto que el servicio que yo vaya a instalar. 55 00:05:36,240 --> 00:05:50,100 ¿De acuerdo? Muy bien. Entonces, recopilando, cuando yo vaya a realizar una actualización del software del servidor, siempre tener que tener en cuenta todo este conjunto de medidas. 56 00:05:50,100 --> 00:06:07,779 En el caso de que nosotros vayamos a realizar un sistema sobre un entorno Linux, siempre necesito comprobar cuáles son las dependencias necesarias para el nuevo software que voy a instalar. 57 00:06:07,779 --> 00:06:15,920 De esa forma evitaré que se vean afectados los programas que ya tenemos en ejecución en nuestro servidor 58 00:06:15,920 --> 00:06:24,550 Hemos hablado en el punto anterior tanto de servidores web como servidores de base de datos 59 00:06:24,550 --> 00:06:28,730 Ahora bien, ¿cómo podemos definir servidor web? 60 00:06:29,529 --> 00:06:38,829 Podemos definir un servidor web como un programa que proporciona servicio web al ordenador que lo aloja 61 00:06:38,829 --> 00:06:49,110 pero también un servidor web es un programa que se ejecuta en el servidor realizando conexiones a través del servicio. 62 00:06:49,629 --> 00:06:59,470 Un servidor web, lo que sería el software en sí, se va a ejecutar siempre sobre un hardware, por tanto, sobre una máquina servidor 63 00:06:59,470 --> 00:07:07,730 y va a permanecer a la espera de las peticiones realizadas por parte de las máquinas clientes que se conectan a él. 64 00:07:07,730 --> 00:07:18,370 Para eso va a utilizar un navegador web y va a procesar las solicitudes de aquellas páginas web que almacene. 65 00:07:19,009 --> 00:07:25,529 Nos podemos encontrar en el mercado diferentes tipos de servidores web, tanto propietarios como libres. 66 00:07:26,189 --> 00:07:34,670 En nuestro caso vamos a utilizar durante el curso el sistema, el servidor web, perdón, denominado Apache, 67 00:07:34,670 --> 00:07:39,310 porque normalmente dentro del mundo de las aplicaciones web 68 00:07:39,310 --> 00:07:42,230 el triunfo y dato que más se utiliza es 69 00:07:42,230 --> 00:07:46,649 el servidor web Apache, servidor de base de datos MySQL 70 00:07:46,649 --> 00:07:51,490 y lenguaje de procesamiento de script del lado del servidor PHP 71 00:07:51,490 --> 00:07:56,529 Además de Apache, cuya cuota de mercado es muy amplia 72 00:07:56,529 --> 00:08:01,910 existen otros servidores web como Internet Information Server 73 00:08:01,910 --> 00:08:04,889 que también son muy utilizados 74 00:08:04,889 --> 00:08:14,230 Teniendo en cuenta que el servidor Apache va a ser el servidor web 75 00:08:14,230 --> 00:08:16,949 con el que nosotros trabajemos durante el curso 76 00:08:16,949 --> 00:08:23,610 debemos comprender algunos de sus fundamentos más importantes 77 00:08:23,610 --> 00:08:32,909 Apache es un servidor web modular, multiplataforma, gratuito y de código abierto 78 00:08:32,909 --> 00:08:52,909 Para realizar la descarga e instalación a nivel básico del servidor web Apache, tanto en sistemas Windows como en sistemas Linux, es interesante que sigáis paso a paso todos los puntos de esta descarga 79 00:08:52,909 --> 00:08:59,909 y a continuación ir observando las diferentes ventanas relacionadas 80 00:09:00,690 --> 00:09:05,909 tanto con la descarga del servidor a través de su página oficial 81 00:09:06,529 --> 00:09:12,289 como una vez que hemos elegido la versión a descarga 82 00:09:12,289 --> 00:09:16,769 los complementos que queremos instalar en nuestra máquina 83 00:09:16,769 --> 00:09:23,879 descargado el archivo hacemos clic sobre el paquete 84 00:09:23,879 --> 00:09:32,340 y seleccionamos las opciones correspondientes y una vez que hayamos ejecutado los pasos del asistente 85 00:09:32,340 --> 00:09:39,960 que nos va a ir guiando, hay que extraer el contenido del archivo comprimido de Apache 86 00:09:39,960 --> 00:09:46,740 y trasladarlo a una carpeta denominada Apache 24 al directorio RAID del sistema. 87 00:09:46,740 --> 00:09:54,340 Esto sería si vosotros vais a realizar la instalación bajo vuestra máquina principal 88 00:09:54,340 --> 00:10:01,940 Mi consejo es que para no tener en ningún momento interferencias con ningún software instalado en vuestra máquina 89 00:10:01,940 --> 00:10:10,000 Realicéis la instalación, si es que lo queréis probar, del servidor web Apache en una máquina virtual 90 00:10:10,000 --> 00:10:18,490 Cuando nosotros hayamos terminado de ejecutar podéis ir observando los diferentes pasos de la ventana 91 00:10:18,490 --> 00:10:29,330 y por último cuando vosotros hayáis finalizado la descarga os aparecerá un mensaje indicando que el servidor web está corriendo 92 00:10:29,330 --> 00:10:36,309 si lo que vamos a hacer es realizar la instalación de MySQL 93 00:10:36,309 --> 00:10:40,230 podemos hacer una instalación guiada 94 00:10:40,230 --> 00:10:45,590 haciendo uso de los archivos correspondientes 95 00:10:45,590 --> 00:10:48,629 a los diferentes entornos a través de su página oficial 96 00:10:48,629 --> 00:10:53,789 o bien exactamente igual que en el caso del servidor web Apache 97 00:10:53,789 --> 00:10:56,330 podríamos optar por lo que se llama 98 00:10:56,330 --> 00:11:00,009 una instalación integrada como veremos posteriormente 99 00:11:00,009 --> 00:11:05,370 un sistema gestor de base de datos es un software específico 100 00:11:05,370 --> 00:11:11,710 que tiene como funcionalidad la creación, manipulación y gestión de base de datos 101 00:11:11,710 --> 00:11:17,309 actuando siempre de interfaz entre la base de datos y el usuario 102 00:11:17,309 --> 00:11:22,409 o las aplicaciones que vayan a utilizar la base de datos 103 00:11:22,409 --> 00:11:28,470 Dentro del mercado existe un conjunto ingente de sistemas gestores de base de datos 104 00:11:28,470 --> 00:11:33,730 tanto propietarios como libres, aunque durante el curso nosotros vamos a trabajar con MySQL 105 00:11:33,730 --> 00:11:43,590 está bien que conozcáis que existen otras en el mercado como PostgreSQL, MariaDB, Oracle por supuesto, etc. 106 00:11:45,049 --> 00:11:50,990 MariaDB en realidad es un fork de MySQL, por tanto su funcionamiento es muy semejante 107 00:11:50,990 --> 00:11:53,570 ya que MariaDB está basado en MySQL 108 00:11:53,570 --> 00:12:00,070 Ambos SGBD están muy ligados al lenguaje de script del lado del servidor PHP 109 00:12:00,070 --> 00:12:01,850 que veremos durante el curso 110 00:12:01,850 --> 00:12:06,929 De hecho, en este lenguaje existen funciones específicas 111 00:12:06,929 --> 00:12:13,009 que nos permiten conectar y acceder a base de datos de ambos sistemas 112 00:12:13,009 --> 00:12:18,429 Tanto MariaDB como MySQL cumplen con el estándar de SQL 113 00:12:18,429 --> 00:12:27,289 Eso permite facilitar la integración de estas bases de datos que creemos o en MariaDB o MySQL 114 00:12:27,289 --> 00:12:31,789 con otros sistemas gestores de bases de datos que respeten al estándar 115 00:12:31,789 --> 00:12:41,139 Indicar que la rapidez de acceso a datos empleando las bases de datos de tipo MyISAM 116 00:12:41,139 --> 00:12:47,120 que es el motor por defecto de MySQL, hacen de este sistema uno de los más utilizados 117 00:12:47,120 --> 00:12:48,120 Gracias.