Esta guía asume que estas usando una instalación nueva de CentOS 6 y que ya has instalado nginx. Si no sabes como instalar nginx ve a mi post de Railo y nginx aquí y sigue las instrucciones para nginx.
Instala el software necesario
Ejecuta el siguiente comando como root
yum -y install mysql mysql-server php php-common php-fpm php-xml php-xmlrpc php-mysql
Ahora descarga WordPress y crea un directorio a donde apuntara nginx
wget http://wordpress.org/latest.tar.gz
tar -zxvf latest.tar.gz
mkdir /webroot
mv wordpress /webroot
chown -R nginx:nginx /webroot/wordpress
Crea la base de datos y usuario para wordpress en MySQL
conéctate a la consola de MySQL como root.
mysql -u root -p
Si aun no tienes un password de root en MySQL y no sabes como hacerlo ve aquí y sigue las instrucciones del paso 1.
Ahora crea la base de datos y el usuario de la siguiente forma
CREATE DATABASE wordpressdb;
CREATE USER wordpressusr@localhost IDENTIFIED BY 'usatupasswordaca';
GRANT ALL PRIVILEGES ON wordpressdb . * TO wordpressusr@localhost;
FLUSH PRIVILEGES;
exit
Configura WordPress
Ve al directorio de WordPress crea una copia del archivo de configuración que será la que usaremos para esta instalación
cp -p wp-config-sample.php wp-config.php
Abre el archivo wp-config.php usando vi o tu editor favorito, localiza la sección de MySQL y remplaza los campos de base de datos, usuario y password por los valores que correspondan al paso anterior.
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpressdb');
/** MySQL database username */
define('DB_USER', 'wordpressusr');
/** MySQL database password */
define('DB_PASSWORD', 'usatupasswordaca');
/** MySQL hostname */
define('DB_HOST', 'localhost');
Configura nginx
Cámbiate al directorio /etc/nginx/ y crea una copia de respaldo del archivo nginx.conf
cp -p nginx.conf nginx.conf_OLD
Abre el archivo nginx.conf y remplaza todo el contenido por lo siguiente
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] $request '
'$status $body_bytes_sent '
'$http_user_agent $http_x_forwarded_for';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
keepalive_timeout 30;
##################
#gzip compression#
##################
gzip on;
gzip_disable msie6;
# gzip_static on;
gzip_min_length 1400;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 9;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css image/png image/gif image/jpg application/json application/x-javascript text/xml application/
xml application/xml+rss text/javascript applicacion/x-font-ttf font/opentype application/x;
server_names_hash_bucket_size 64;
include /etc/nginx/conf.d/*.conf;
}
En el miso directorio crea un archivo llamado wp.conf con el siguiente contenido
location / {
# Rewrite rules and other criterias can go here
# Remember to avoid using if() where possible (http://wiki.nginx.org/IfIsEvil)
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
Muévete al directorio /etc/nginx/conf.d y crea una copia de respaldo del archivo default.conf
cp -p default.conf default.conf_OLD
Abre el archvo default.conf y remplaza todo el contenido por lo siguiente
server {
listen 80;
server_name tudominio.com www.tudominio.com;
root /webroot/wordpress;
index index.php;
access_log /var/log/blog_access.log;
error_log /var/log/blog_error.log;
if ($http_host != "www.tudominio.com") {
rewrite ^ http://www.tudominio.com$request_uri permanent;
}
include wp.conf;
}
Para finalizar abre el archivo /etc/php-fpm.d/www.conf localiza los campos user y group y cambia sus valores de la siguiente forma
user = nginxgroup = nginx
Finalizar
Inicia los servicios de nginx y php-fpm y asegúrate de que inicien todos los servicios necesarios cada vez que reinicie el sistema
service nginx start
service php-fpm start
chkconfig nginx on
chkconfig php-fpm on
chkconfig mysqld on
Si algunos de los servicios ya estuviera corriendo entonces lo reinicias.
En tu navegador web preferido ve a http://www.tudominio.com/wp-admin/install.php y sigue las instrucciones.
Lo has logrado, tu servidor esta listo.
Deja tus comentarios y/o sugerencias.

Leave a Reply