Aunque instalar lo necesario para alojar un sitio Wordpress usando Apache y mod_php es la forma más rápida y sencilla, definitivamente no es la más eficiente. Si estas preparando un servidor para alojar un par de sitios de la familia, un par de sitios que nunca tendrán mucho tráfico, entonces el método citado es suficiente, pero si estas pensando que puedes llegar a tener muchas visitas, o que en algún momento unos de tus artículos se hará lo bastante famoso como para que tu sitio se vea inundado de visitas, entonces debes tomar otro enfoque, y una opción es usar el MPM Event the Apache y PHP-FPM como interprete externo de PHP.
Esto hace que Apache sea mucho más eficiente en el manejo de memoria y por lo tanto será capaz de recibir muchas más visitas simultaneas.
Antes de iniciar la instalación voy a instalar vim por que es mi editor favorito y no viene por defecto en Debian.
apt-get install vim
Igualmente si arrancamos en un Debian por defecto, no podremos instalar el paquete libapache2-mod-fastcgi, por lo que vamos a habilitar el repositorio non-free
para ello vamos a editar el archivo /etc/apt/sources.list
vim /etc/apt/sources.list
Y asegurate de que tengas algo parecido a esto.
deb http://http.debian.net/debian jessie main non-free
deb-src http://http.debian.net/debian jessie main non-free
Ahora con todo listo comenzamos la instalación, y lo primero es crear el directorio donde nuestra aplicación va a residir.
mkdir -p /var/www/wordpress/{public_html,logs}
Vamos ahora a instalar el software necesario, los comandos abajo indicados harán la tearea (deben ser ejecutado como root)
apt-get update && sudo apt-get upgrade
apt-get install apache2-mpm-event libapache2-mod-fastcgi php5 php5-mysql php5-fpm mysql-client mysql-server
mysql_secure_installation
Al momento de instalar MySQL te pedirá introducir una nueva contraseña para el usuario root, en una pantalla como esta.
Tenemos que indicar a Apache que PHP-FPM ejecutará los scripts de PHP que conforman Wordpress, y para ello el archivo /etc/apache2/conf-available/php-fpm.conf debe tener el contenido indicado abajo.
<IfModule mod_fastcgi.c>
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /var/run/php5-fpm.sock -pass-header Authorization
</IfModule>
Activemos ahora la configuracion y reiniciamos el servicio.
a2enmod actions fastcgi alias rewrite && a2enconf php-fpm && service apache2 reload
Hora de configurar el servidor virtual que manejará el sitio Wordpress.
vim /etc/apache2/sites-available/wordpress.conf
Y este debe ser el contenido del archivo. Asegurate de cambiar la línea ServerName con los datos de tu sitio
<VirtualHost *:80>
DocumentRoot /var/www/wordpress/public_html
ServerName wordpress.example.com
CustomLog "/var/www/wordpress/logs/access_log" common
ErrorLog "/var/www/wordpress/logs/error_log"
<Directory /var/www/wordpress/public_html/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Directory /usr/lib/cgi-bin/>
Require all granted
</Directory>
</VirtualHost>
Activemos la nueva configuración.
a2ensite wordpress
service apache2 reload
Vamos ahora con la base de datos.
Comenzamos creando la base de datos y el usuario que la controlará.
mysql -u root -p
Utilizando la contraseña ingresada en la pantalla de arriba, ingresamos al interprete de MySQL e introducimos los comandos de abajo.
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO "wordpress"@"localhost" IDENTIFIED BY "cambia_este_pass";
FLUSH PRIVILEGES;
EXIT
Estamos casi listos, solo resta instalar la última versión de Wordpress.
cd /tmp
wget https://es.wordpress.org/wordpress-4.2.2-es_ES.tar.gz
tar xvzf wordpress-4.2.2-es_ES.tar.gz
mv wordpress/* /var/www/wordpress/public_html/
chown -R www-data:www-data /var/www/wordpress/public_html
Con eso estamos listos, sigue las siguientes pantallas y concluye la instalación.
Hemos terminado, puede que te interese alguno de estos otros artículos
Sugerencias, comentarios o consultas aquí
Editado por última vez: 17 de mayo de 2015