Cristina Alcantarilla
INFORMÁTICA & DISEÑADORA
Instala Apache+php y crea hots virtuales en Ubuntu 12.04

Para instalar Apache+php

Lo primero será instalar el paquete apache2 con sus dependencias:

   sudo apt-get install apache2

Una vez hecho esto, comprobamos que está funcionando correctamente, abrimos un navegador y escribimos:

Si estamos en local:

   localhost

Si estamos en un servidor externo:

   Nombre de la ip

También podemos comprobarlo mediante el comando:

 /etc/init.d/apache2 status

Muy bien, ya tenemos el servidor apache instalado y funcionando!

Si únicamente quisiéramos alojar una página simple (HTML y CSS) ya estaríamos preparados para hacerlo, únicamente habría que situar los archivos de la página dentro de la carpeta /var/www, reemplazando el index.html por defecto con el de nuestra página web.

vamos a suponer que queremos alojar varias páginas independientes, haciendo nuestro pequeño servicio de hosting, para ello –> virtualhost

VirtualHost

La configuración de los VirtualHosts en Ubuntu (o Debian) es bastante más flexible y organizada que en Fedora, ya que tendremos la posibilidad de crear archivos de configuración independientes para cada una de las páginas que alojemos, algo muy útil si manejamos un gran volumen de páginas web desde un mismo servidor.

Crearemos VirtualHosts basados en nombre, por ser el método más flexible y utilizado de los que existen. El uso de VirtualHost basados en nombres nos permite mostrar a un navegador web una página u otra dependiendo de la URL que nos solicite dicho navegador.

Lo primero que haremos será crear varias páginas web de prueba, cada una con su index.html dentro de carpetas independientes en la ruta /var/www, algo como esto para las pruebas es más que suficiente.

Una vez que lo tenemos nos toca configurar el archivo /etc/hosts para las pruebas en local, el fichero quedaría algo similar a esto:

127.0.0.1       localhost
127.0.0.1       picarisimo
127.0.1.1       ubuntu
127.0.1.1       www.miweb-1.com
127.0.1.1       www.miweb-2.com
127.0.1.1       www.miweb-3.com

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Ahora vamos a crear los archivos de configuración para cada uno de los VirtualHost. Los crearemos dentro de /etc/apache2/sites-available con el nombre de la página para distinguirlos fácilmente, un ejemplo de archivo de configuración lo tenéis aquí, este sería miweb-1:

<VirtualHost *:80>
        ServerName www.miweb-1.com
        DocumentRoot /var/www/miweb-1
</VirtualHost>

Una vez que hemos creado uno para cada VirtualHost solamente nos queda habilitarlos. Para ello utilizaremos el comando:

a2ensite miweb-1

Si queréis deshabilitar una página podéis hacerlo en cualquier momento con el comando:

a2dissite miweb-1

Para realizar una redirección a otra página web, que puede estar en el mismo servidor o en cualquier parte de internet, tenemos que añadir la siguiente línea al archivo de configuración del VirtualHost que queramos redireccionar:

<VirtualHost *:80>
        ServerName www.miweb-1.com
        DocumentRoot /var/www/miweb-1
        RedirectPermanent / http://www.tevasaotraweb.com
</VirtualHost>

Recordad que para que los cambios sean efectivos debéis reiniciar el servidor con:

service apache2 reload

Módulo PHP

La gestión de los módulos en Apche bajo Ubuntu/Debian es bastante parecida a la gestión de VirtualHost, e igual de flexible.

Podemos ver qué módulos tenemos disponibles en la carpeta:

/etc/apache2/mods-available

y ver cuáles están activados en la carpeta

/etc/apache2/mods-enabled

Por defecto no tenemos el módulo para PHP disponible, así que tendremos que instalarlo:

 sudo apt-get install php5

Tras instalarlo volvemos a:

 /etc/apache2/mods-available

y comprobamos que ahora se encuentra disponible el módulo PHP, buscando si existen los ficheros:

php5.conf
php5.load

Comprobamos que se encuentra activo dentro de:

 /etc/apache2/mods-enabled

Mirando que existan los ficheros:

php5.conf
php5.load

Si por algún motivo no se iniciase automáticamente tras la instalación, lo activaríamos con el comando:

a2enmod nombremodulo

Para deshabilitar un módulo utilizaríamos el comando:

a2dismod nombremodulo

Cada cambio que se realice en el servidor necesita un reinicio (sudo service apache2 reload) para que se haga efectivo.

Podemos crear una página simple con código PHP para comprobar que funciona. Edito el archivo /var/www/miweb-1/index.html y lo renombro a index.php, y le inserto un código PHP a la página para comprobar.

Y esto es todo, a disfrutar!! 😉

Share Button

Deja un comentario