apacheSaludos LiGNUxeros!

Hoy quiero traeros un pequeño tutorial que estoy seguro que servirá a más de uno. Recientemente he empezado a meterme en el mundo del desarrollo de aplicaciones web, y para eso es imperativo el uso de algún tipo de servidor para poder hacer pruebas a gusto. Canonical ha cambiado un poco el paquete que encontramos en sus repositorios oficiales y muchos tutoriales que podemos encontrar están, desgraciadamente, desactualizados.

Antes de nada, deciros que Apache supone un paquete inmensamente rico y el software para servidores web más utilizado del mercado. Es un programa libre, protegido, evidentemente, con la licencia Apache. Os recomiendo que os informéis como es debido de todas sus capacidades en la página oficial.

También, y como este tutorial lo hago pensando en preparar la máquina para empezar con el desarrollo web, veremos un poco de PHP5 y MySQL, pero nada del otro mundo.

Recomiendo que hagáis esto con una partición distinta a la que soléis utilizar o una máquina virtual, para evitar posibles huecos en la seguridad si alguna veis os pasáis por alguna biblioteca o algo por el estilo.

Huecos en la seguridad si alguna veis os pasáis por alguna biblioteca o algo por el estilo.

Paso previo

Y pensareis que es una chorrada, pero es importante acrodaros siempre que vayais a instalar cualquier cosa o a seguir cualquier tutorial, para evitar errores:

sudo apt update

Fácil, ¿no?

Instalando Apache2

Instalar la aplicación en sí, no guarda mucho secreto, con utilizar el comando apt install tendremos suficiente.

sudo apt install apache2

Una vez hayamos realizado la instalación, cuando nos fijamos a cualquiera des estos enlaces:

http://127.0.0.1

http://localhost

Podremos ver la siguiente pantalla:

1

Aquí es cuando la cosa empieza a cambiar de versiones anteriores. Si ya habíais hecho la instalación de apache en el pasado, veréis que la página de index.html ha sido modificada por los chicos de Canonical. Y no solo eso, se ha creado una máquina en /var/www/html y se ha configurado como default. Todos estos cambios se han hecho para aumentar la seguridad.

Instalando PHP5

Pero sigamos con la instalación. Ahora instalaremos PHP5 con módulo a apache

sudo apt install php5 libapache2-mod-php5

Ahora habrá que reiniciar el servicio de apache para que los cambios que hemos hecho con PHP surjan efecto:

sudo /etc/init.d/apache2 restart

Si nos dirigimos a /var/www/html podremos ver el fichero index.html que nos muestra al acceder a nuestro servidor. Podemos modificar ese cuál es el fichero que nos lanza por defecto en el documento de configuración de apache

Ahora un poco de seguridad, para evitar sorpresas, recomiendo que el directorio en el que almacenáis las páginas web sea propiedad del grupo www-data. El cambio es sencillo de hacer:

sudo chown -R VUESTRO_USUARIO:www-data /var/www/html

También debes modificar los permisos, en caso de que no los tubierais ya así:

sudo chmod -R 755 /var/www/html

Y si ya hemos instalado PHP5 y reiniciado el servidor, comprobaremos que funciona con el fichero de info de php.

nano /var/www/html/info.php

Y dentro del fichero añadimos el siguiente código:

<?php phpinfo(); ?>

5

El siguiente punto distintivo que me encontré cuando este pasado mes intenté configurar mi servidor fue que me daba error al intentar acceder a este fichero. Para arreglarlo, y después de una búsqueda por DuckDuckGo, por supuesto, modifiqué el siguiente fichero:

sudo nano /etc/apache2/mods-enabled/dir.conf

Y cambié el orden de los ficheros mostrados, poniendo index.php en segundo lugar:

4

Una vez hecho esto, cuando nos dirigimos en nuestro navegador, vemos lo siguiente:

http://localhost/info.php

6

Antes de pasar al MySQL, un pequeño plus si queréis dedicaros a desarrollar con PHP:

Con la configuración por defecto de PHP5, ni errores ni los warnings se muestran, para evitar que en nuestras páginas webs salgan mensajes no deseados. Sin embargo, y como PHP es un lenguaje interpretado, los errores no nos aparecen al compilar como con otros lenguajes (C, Java, etc). Directamente veríamos que nuestra página no está mostrando lo que queremos, y rompernos los cuernos hasta saber porqué.

Una solución fácil reside en la edición del fichero de configuración siguiente:

sudo geany /etc/php5/apache2/php.ini

Yo estoy utilizando el Geany para que la captura parezca más entendible, pero podéis usar gedit o nano, si no disponéis de este programa, o instalarlo con (sudo apt install geany). No es el mejor entorno de desarrollo, pero para lo que nos atañe, nos sobra. El editor gedit, el que trae Ubuntu por defecto, también es bastante eficaz, hay que decirlo.

Tendréis que modificar las líneas 462 y 479, para que la opción error_reporting y display_errors nos aparezcan como en la captura:

7

Podéis ver que sus valores ahora son E_ALL y On. E_ALL significa todos los errores, y On es bastante claro. Si os entretenéis a leer los comentarios de estos ficheros y si tenéis suficiente dominio del inglés, realmente podréis aprender todo sobre la configuración de estos servidores. La gente no suele hacerlo, es más cómodo buscar por Internet, pero tened en cuenta que los comentarios siempre estarán actualizados y correctos, y lo que nos encontremos por la red, no está tan claro. Sobretodo con PHP, que de la versión 4 a la 5 hay algunas cosas que dejan de funcionar.

Instalando MySQL

La cantidad de páginas web que utilizan el programa MySQL para sus bases de datos es grande. Liderando el mercado y siendo libre, no veo razón para estudiarnos otros sistemas, más que por pura curiosidad científica.

Para instalarlo basta con:

sudo apt install mysql-server mysql-client

Reiniciemos otra vez el servidor y ya estaremos:

sudo /etc/init.d/apache2 restart

¡Y eso es todo por hoy! Espero que os haya gustado, si tenéis alguna duda, en los comentarios o por el foro, intentaré responderos en cuanto pueda 🙂

¡Suerte!

Suscribirse
Notificarme las
guest
6 Comentarios
Los más recientes
Los más antiguos Más votados
Feedbacks en línea
Ver todos los comentarios