martes, 20 de septiembre de 2016

Instalando Apache, PHP y Mysql en Raspbian

Hola de nuevo,

vamos a cambiar un poco de tema y comenzaremos a instalar lo que posteriormente será nuestro servidor web para interactuar con la domótica de la casa y con django, en el cuál estará hecha nuestra web.

Antes de comenzar a instalar paquetes necesarios lo único que he hecho a sido una instalación limpia de Raspbian y únicamente e instalado y actualizado los paquetes y repositorios. También le he dado una ip fija que me sea cómoda para trabajar con ella a distancia y conectándome por ssh. Así que le he puesto una ip, digamos la 192.168.0.100.

Para entendernos:
Lo que se pretende hacer en este capítulo es instalar apache en la Raspberry y probar su funcionamiento (de momento en red local). En capítulos posteriores instalaremos Django y lo conectaremos con Apache para así servir el proyecto de django a través de la red. Para hacer esto hay varias maneras y software para hacerlo.

Veamos un par de ejemplos:



Vemos que existen varios servidores y módulos para hacer esto. Lo más común es utilizar Apache, que es lo que haré yo.

De manera general, es bastante intuitivo como se comunican django y apache. A través del módulo wsgi y en un entorno virtual aislado nos conectamos a nuestro proyecto mediante django. Podríamos prescindir del entorno virtual, pero en caso de tener proyectos paralelos en django, no podríamos diferenciar entre unos y otros, así que desde el principio, es mejor hacerlo bien.
No es el punto fuerte de mi proyecto ni instalar, ni configurar, ni securizar Apache, por lo que se hará una instalación básica.

  • Lo primero que vamos a hacer es crear un grupo nuevo en nuestra raspberry, lo llamaremos www-data.
sudo groupadd www-data

sudo usermod-a-Gwww-data www-data

y a continuación instalamos Apache
 
sudo apt-get install apache2

Cuando termina de instalarse comprobamos desde otro ordenador de la red, en el navegador, la ip de nuestra raspberry y debería funcionar, lo sabemos porque muestra una página de prueba con el típico "It works! ".

  • Ahora instalaremos PHP para poder crear contenido dinámico en nuestra web. Para ello ejecutaremos el siguiente comando: 
sudo apt-get install php5

A continuación instalaremos unos paquetes que nos podrían hacer falta en un futuro.

 sudo apt-get install libapache2-mod-php5 libapache2-mod-perl2 php5 php5-cli php5-common php5-curl php5-dev php5-gd php5-imap php5-ldap php5-mhash php5-mysql php5-odbc

Tras esto, reiniciamos la raspberry y haremos una prueba con PHP.

Dentro del documento sudo nano /var/www/info.php de nuestra pi escribimos el siguiente código:

<?php phpinfo(); ?>

Nota: Puede que en las versiones nuevas de apache halla que meter el archivo info.php dentro del directorio /var/www/html/info.php

Abriremos el navegador e introduciremos IPRASPBERRY/info.php
(por ejemplo: 192.168.0.100/info.php) o localhost si estamos en la Raspberry Pi. Debería aparecer un resumen con parámetros del servidor apache.


  • Ahora nos pondremos a instalar MySQL.
Durante la instalación nos pedirá datos como la contraseña de MySQL. Coged nota porque luego usaremos estos parámetros para comprobar que funciona MySQL. Para instalar MySQL ejecutaremos el siguiente comando:

sudo apt-get install mysql-server mysql-client php5-mysql

Reiniciamos de nuevo la Raspberry Pi y, tras reiniciarse abriremos un terminal e iniciamos MySQL.

sudo service mysql start

Para comprobar que funciona:

mysql-uroot-p

Podemos dejar el parámetro -p vacio y luego nos preguntará la contraseña o poner la contraseña junto a este parámetro para que no la pida.

No hay comentarios:

Publicar un comentario