Cómo instalar un webserver con Apache, PHP5 y WordPress utilizando Virtual Hosts Mayo 12, 2008
Posted by proteo2000 in nivel avanzado, textos.Tags: apache, cómos, debian, instalaciones, linux, mysql, php, webservers, wordpress
4 comments
El siguiente tutorial fue el resultado de una tarea de un curso de linux avanzado. Si bien el procedimiento no es muy avanzado sí me costó trabajo obtenerlo. Y -como diría Galileo- sin embargo se mueve. Funciona para GNU/Linux Debian Etch.
Para efectos demostrativos crearé dos sitios web virtuales, ambos en el puerto 80:
- acuerdo.com, un sitio de páginas estáticas en /var/www/memoria_jornadas
- misitio.com, un blog de wordpress
Y dado que WordPress requiere una base de datos MySQL además de PHP versión 5 habrá que instalar un servidor de MySQL y soporte para PHP5.
1. Instalar Apache + PHP + WordPress + MySQL
Como root:
$ apt-get install apache2 php5 wordpress mysql-server-5.0
2. Comprobar en un navegador la dirección http://127.0.0.1 para comprobar si apache funciona correctamente.
3. Ahora hay que comprobar si el soporte de PHP funciona:
a. Como root, cree una página PHP llamada prueba.php con el siguiente contenido y guárdela en /var/www/apache2-default/:
<?php // Muestra toda la información, por omisión INFO_ALL phpinfo();
// Mostrar solo la información de módulos. // phpinfo( 8 ) produce el mismo resultado. phpinfo(INFO_MODULES);
?>
4. Desde el navegador pruebe la página http://127.0.0.1/apache2-default/prueba.php
5. Si no funciona el PHP, habrá que habilitar el soporte de PHP5 en apache2
Como root:
a. En /etc/apache2/mods-available crear archivos:
libphp5.conf: AddType application/x-httpd-php .php .phtml
libphp5.load: LoadModule php5_module /usr/lib/apache2/modules/libphp5.so
b. Habilitar módulos utilizando el script a2enmod:
$ a2enmod libphp5
6. Modificar archivo /etc/hosts. Agregar línea:
127.0.0.1 localhost (...) misitio.com acuerdo.com
Ojo: En la misma línea deben quedar todos los alias usados para 127.0.0.1
4. Configurar Virtual Hosts
a. En la carpeta /etc/apache2/sites-available crear archivo de definición, llamémoslo “virtual”:
NameVirtualHost acuerdo.com:80
<VirtualHost acuerdo.com:80>
DocumentRoot /var/www/memoria_jornadas/ ServerName acuerdo.com ServerAlias *.acuerdo.com ErrorLog /var/log/apache2/acuerdo-err.log TransferLog /var/log/apache2/acuerdo-transfer.log
</VirtualHost>
NameVirtualHost misitio.com:80
<VirtualHost misitio.com:80>
DocumentRoot /usr/share/wordpress/ ServerName misitio.com ServerAlias www.misitio.com *.misitio.com ErrorLog /var/log/apache2/wp-error.log TransferLog /var/log/apache2/wp-access.log
</VirtualHost>
Nota: previamente hay que copiar los archivos necesarios a /var/www/memoria_jornadas, revisar permisos, y -muy importante- comprobar que existan los directorios referidos.
5. Habilitar (enable) los sitios con el script a2ensite:
$ a2ensite virtual
6. Reiniciar servicios de Apache:
$ /etc/init.d/apache2 restart
7. Configurar WordPress:
a. Abra su navegador y abra la dirección http://misitio.com
b. Siga las instrucciones para configurar el WordPress.
Mayor información en el sitio oficial de Apache y en el blog All About Linux.