Instalar Nginx en CentOS 5.4 + WordPress

Como muchos saben hace poco he migrado mi servidor de Apache a Nginx, ya que el apache no aguantaba la cantidad de peticiones y por más que lo tuneara, quizás por la mezcla con el Plesk de la gente de S4U hacia que el servidor no aguantara llegando hasta 20 o incluso 30 la carga.

Con Nginx, lleva dos semanas y no pasa de 2 la carga, y un consumo de 300 MB, de memoria con un promedio de 200 conexiones simultaneas el 80% del día.

Para la instalación aproveché también para migrar de Debian  a CentOS. La instalación para este tutorial es con Yum la versión es la 0.6.39 de Nginx.

Agregar Repositorios EPEL

 rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/$(uname -m)
/epel-release-5-3.noarch.rpm

Instalar Nginx vía YUM

yum install nginx

Instalación de PHP con sus módulos según sea nuestra necesidad.

yum install php-pear-Net-Socket php-pear php-common php-gd php-devel
php php-mbstring php-pear-Mail php-cli php-imap php-snmp php-pdo php-xml
php-pear-Auth-SASL php-ldap php-pear-Net-SMTP php-mysql

Instalamos Spawn-CGI
Spawn-fcgi nos servirá para procesar el php directamente con el y no usa apache para esta tarea.

yum install spawn-fcgi

Instalamos el Script de inicio de PHP-CGI

# wget http://bash.cyberciti.biz/dl/419.sh.zip
# unzip 419.sh.zip
# mv 419.sh /etc/init.d/php_cgi
# chmod +x /etc/init.d/php_cgi

Iniciamos el PHP-CGI y verificamos que este escuchando en el puerto 9000

# /etc/init.d/php_cgi start
# netstat -tulpn | grep :9000

Deberíamos obtener una respuesta como la siguiente

tcp        0      0 127.0.0.1:9000  0.0.0.0:*     LISTEN      14294/php-cgi

Para comprobar que toda nuestra configuración está correcta creamos en la configuración de Nginx un location para lo referente a php de la siguiente forma.

# vi /etc/nginx/nginx.conf

Dentro de la configuración del servidor colocamos lo siguiente.

location ~ \.php$ {
    root           html;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html$fastcgi_script_name;
    include        fastcgi_params;
   }

Reiniciamos nuestro Nginx

# service nginx restart

Creamos un archivo para probar las configuraciones de PHP editando el fichero

vi /usr/share/nginx/html/test.php

Agregamos lo siguiente

<? phpinfo(); ?>

Por ultimo podemos iniciar nuestro explorador y probar el archivo de apache para ver como están nuestras configuraciones.

Trackbacks/Pingbacks:

  1. Bitacoras.com - April 8, 2010

    Información Bitacoras.com…

    Valora en Bitacoras.com: Como muchos saben hace poco he migrado mi servidor de Apache a Nginx, ya que el apache no aguantaba la cantidad de peticiones y por más que lo tuneara, quizás por la mezcla con el Plesk de la gente de S4U hacia que el servi……

  2. Instalación Nginx – Joomla – Fastcgi | Techironic - April 20, 2010

    [...] realizamos en el caso de nuestra instalación de WordPress y Nginx la cual describimos en el post Instalar Nginx en CentOS 5.4 + WordPress, y nos detendremos en el momento de configurar nuestros hosts virtuales para usar la siguiente [...]

Leave a Reply:

Gravatar Image

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>