Publicado el 19 de Julio del 2017
744 visualizaciones desde el 19 de Julio del 2017
3,5 MB
53 paginas
Creado hace 13a (16/12/2011)
Aulas en red. Aplicaciones y
Ministerio de Educación, Cultura y Deporte
Servicios. Linux
Otros servicios
Instituto Nacional de Tecnologías Educativas y
de Formación del Profesorado
2012
Otros Servicios
En un servidor Linux se pueden instalar un gran número de servicios. En este apartado hablaremos de los servicios más
utilizados, además del servidor web apache, para la instalación de aplicaciones web en servidores que es el lenguaje de
programación PHP y el gestor de bases de datos MySQL. No nos olvidaremos del servidor FTP para transferir archivos
desde y hacia el servidor y del servicio de SSH, también para transferir archivos y para conectarse al servidor para
administrarlo.
Servidor LAMP
Pregunta Verdadero-Falso
¿Pueden coexistir en un mismo servidor varios servicios simultaneamente (ejemplo: Web Apache + PHP + MySQL +
FTP + SSH?
Verdadero
Falso
Instalación y configuración de PHP
PHP es, junto con mysql, el complemento ideal del servidor web apache ya que dota al servidor de un lenguaje script de
ejecución en el servidor lo que facilita la creación de aplicaciones web y sitios web dinámicos.
1 de 52
Instalación de PHP
Para instalar PHP en nuestro servidor podemos utilizar apt-get. El paquete a instalar depende de la versión que deseemos
instalar y la versión de apache. Lo normal es que utilicemos la versión 2 de apache y que instalemos la versión 5 de php. En
tal caso deberíamos instalar libapache2-mod-php5:
// Instalación de php5 para apache 2
sudo apt-get install libapache2-mod-php5
Al instalar libapache2-mod-php5 mediante apt-get, automáticamente se configura para integrarse perfectamente en apache,
creando los archivos necesarios en la carpeta de módulos disponibles de apache (/etc/apache2/mods-available) y creando
los enlaces necesarios para habilitarlos en la carpeta de módulos habilitados de apache (/etc/apache2/mods-enabled).
Si vamos a conectar a bases de datos mysql desde php, necesitamos instalar el módulo php5-mysql:
// Instalación del módulo php5-mysql
sudo apt-get install php5-mysql
Además, tendremos que editar el archivo /etc/php5/apache2/php.ini y añadir la línea extension=mysql.so como veremos en
el siguiente apartado.
Configuración de PHP
El archivo de configuración de php5 es el archivo:
// Archivo de configuración de php5
/etc/php5/apache2/php.ini
Los parámetros más destacables a configurar son:
Safe Mode = Off (Modo Seguro. Si el Modo seguro está desactivado, se habilitan todas las funciones del PHP. Para
un uso educativo es mejor ser funcional y no activar el modo seguro. Si el Modo seguro está activado, se deshabilitan
todas las funciones del PHP consideradas peligrosas. Para servicios de hosting se recomienda activar el modo
seguro)
Display errors = On (Mostrar Errores. Muestra los errores en las mismas páginas, cuando les haya. Cuando hay
errores en los scritps, es más fácil encontrarlos si se muestran en las páginas)
max_execution_time=30 (Tiempo máximo en segundos, de ejecución de un script. Si dejamos que un script se
ejecute indefinidamente, podría colapsar el sistema)
post_max_size=8M (Tamaño máximo de datos que se pueden enviar al servidor mediante POST)
upload_max_filesize = 8M (Tamaño máximo de archivo que se puede subir al servidor. Si vamos a trabajar con
archivos grandes, debemos subir este parámetro)
extension=mysql.so (Activa el acceso a bases de datos MySQL desde PHP)
Probando PHP
Una vez instalado y configurado, antes de probar debemos reiniciar el servidor web apache:
// Reiniciando apache
sudo /etc/init.d/apache restart
Ahora crearemos una página php que utilice la función phpinfo que además de comprobar que apache y php están
funcionando, nos mostrará una información de la versión. Crearemos el siguiente archivo:
// Probando PHP. Crear archivo /var/www/phpinfo.php - permisos 644
2 de 52
<HTML>
<H1>Probando PHP</H1>
Salida del comando phpinfo:
<?php
phpinfo();
?>
</HTML>
Ahora tan solo necesitamos arrancar el navegador e ir a la URL: http://ip-del-servidor/phpinfo.php. Si nos aparece la
información de la versión de PHP significa que está correctamente instalado.
En el siguiente ejemplo vemos un programa escrito en PHP que, mediante un bucle for que va desde 1 hasta 10, muestra la
tabla de multiplicar del 7. Si después observamos la página desde el cliente, no vemos más que la respuesta del programa
PHP pero nunca el programa.
// Programa PHP para generar la tabla del 7. Se almacena en el servidor. Se mezcla el HTML con el código
PHP
<html>
<body>
<?
// Tabla de multiplicar del 7
echo "<h2>Tabla del 7</h2>";
// Bucle de 1 a 10
for($i=1; $i<11; $i++)
echo "7 x $i = ".(7*$i)."<br>\n";
?>
</body>
</html>
// Lo que ve el cliente, una vez ejecutado el programa en el servidor: HTML puro
<html>
<body>
<h2>Tabla del 7</h2>7 x 1 = 7<br>
7 x 2 = 14<br>
7 x 3 = 21<br>
7 x 4 = 28<br>
7 x 5 = 35<br>
7 x 6 = 42<br>
7 x 7 = 49<br>
7 x 8 = 56<br>
7 x 9 = 63<br>
7 x 10 = 70<br>
</body>
</html>
Pregunta Verdadero-Falso
3 de 52
Desde el PC cliente, ¿se pueden ver los programas escritos en PHP?
Verdadero
Falso
Instalación y configuración de MySQL
Introducción
MySQL es un SGBD (Sistema Gestor de Bases de Datos) relacionales muy completo y muy utilizado tanto en entornos Linux
como en entornos Windows, principalmente para el desarrollo de aplicaciones web. Entre sus principales prestaciones
destacamos:
Fácil instalación
Fácil administración
Rápido
Completo
Multiplataforma
Por estas razones, casi todas las aplicaciones web desarrolladas en lenguaje PHP que requieran de base de datos, utilizan
MySQL.
Si disponemos de un servidor web con soporte PHP y base de datos MySQL, tendremos la arquitectura ideal para crear un
portal dinámico utilizando gestores de contenidos como Joomla, Drupal o Tikiwiki y herramientas orientadas a crear sitio web
para entornos educativos como Moodle o Claroline, así como aplicaciones web orientadas al trabajo colaborativo y al
desarrollo rápido de contenidos como Mediawiki (la wiki de la wikipedia) o Wordpress (una de las herramientas de blogs más
utilizadas).
Utilización de MySQL por aplicaciones web
Instalación de mysql
Para la instalación del servidor y el cliente de mysql, debemos instalar los paquetes mysql-server, mysql-common y mysql-
client mediante apt-get. Se instalará la versión 5 de mysql:
4 de 52
// Instalación de mysql
sudo apt-get install mysql-server mysql-common mysql-client
Arranque y parada del SGBD mysql
El servidor de datos mysql, al igual que todos los servicios en Debian, dispone de un script de arranque y parada en la
carpeta /etc/init.d.
// Iniciar o reiniciar el servidor mysql
sudo /etc/init.d/mysql restart
// Parar el servidor mysql
sudo /etc/init.d/mysql stop
Arranque automático del servidor MySQL al iniciar el sistema
Para un arranque automático del servicio al iniciar el servidor, debemos crear los enlaces simbólicos correspondientes tal y
como se indica en el apartado Trucos > Arranque automático de servicios al iniciar el sistema.
Configuración del SGBD mysql
El archivo de configuración de mysql es el archivo:
// Archivo de configuración de mysql
/etc/mysql/my.cnf
En dicho archivo se configuran aspectos generales como la ruta donde se almacenarán los archivos de la base de datos, el
puerto a utilizar y algún otro aspecto pero para hacer un uso normal de mysql, no es necesario realizar ninguna modificación
del archivo original.
Administración del SGBD mysql
Mysql es un SGBD completo que permite crear usuarios y establecer permisos sobre bases de datos, tablas y campos
deseados a dichos usuarios. Los permisos pueden ser de consulta, inserción, modificación y borrado de datos, creación,
modificación y eliminación de tablas y bases de datos y de administración de usuarios y permisos, lo que hace a mysql ser un
SGBD muy flexible y muy completo.
Quizás la primera acción que se debería hacer nada más arrancar el SGBD mysql sería poner una contraseña al usuario root
ya que inicialmente no tiene contraseña. Para ello debemos iniciar mysql con el comando:
// Iniciar el servidor de bases de datos mysql
sudo /etc/init.d/mysql start
Posteriormente iniciamos el cliente de mysql como root y cuando aparezca el prompt de mysql (mysql>) ejecutamos una
orden grant para establecer la contraseña de root:
// Ejecutar cliente de mysql y cambiar contraseña de root
mysql -u root // Accedemos sin contraseña
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 4.0.20-log
5 de 52
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> grant all privileges on *.* to root@localhost identified by 'secreta' with grant option;
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
De esta manera habremos puesto como contraseña de root la palabra 'secreta'. La próxima vez que entremos, debemos
añadir la opción -p para que nos pida la contraseña ya que de lo contrario no nos dejará entrar:
// Entrando como root con contraseña
mysql -u root -p
Ahora debemos introducir la contraseña para acceder y tener acceso global al SGBD mysql.
Administración del SGBD mysql vía web
La herramienta de administración de mysql vía web es phpmyadmin. Para más información consultar el apartado Instalación
y configuracion de PHPMyAdmin
Pregunta Verdadero-Falso
MySQL solo sirve para que los programas PHP puedan almacenar datos.
Verdadero
Falso
Instalación y configuración de PHPMyAdmin
Phpmyadmin es una excelente herramienta de administración de MySQL vía web. Para poder utilizar phpmyadmin se
requiere disponer de un servidor web con soporte PHP y MySQL.
La herramienta permite que cualquier usuario de la base de datos que disponga de algún permiso, acceda y haga uso de
dichos permisos. Identificándose con el usuari
Comentarios de: Aulas en red. Aplicaciones y Servicios. Linux - Otros servicios (0)
No hay comentarios