En primer lugar, decir que se hace esta instalación debido a los problemas que tiene apache, a parte, de la rapidez que tiene en servir paginas NGINX.
Después de hacer la instalación de debían vamos ha empezar con la instalación de NGINX, con soporte PHP y MYSQL como base de datos.
En primer lugar con el servidor conectado entramos vía ssh
mi usuario@mi pc:~$ ssh ernest@192.168.1.33
The authenticity of host ‘192.168.1.33 (192.168.1.33)’ can’t be established.
RSA key fingerprint is XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘192.168.1.33’ (RSA) to the list of known hosts.
Aquí introducimos la contraseña
ernest@192.168.1.33’s password:
Linux atotclic6 2.6.32-5-686 #1 SMP Mon Jan 16 16:04:25 UTC 2012 i686
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Feb 2 13:31:35 2012
ernest@atotclic6:~$ Ya estamos dentro nos logueamos como root.
ernest@atotclic6:~$ sudo su
[sudo] password for ernest:
Instalamos Mysql
root@atotclic6:/home/ernest# apt-get install libdbd-mysql-perl libdbi-perl libhtml-template-perl libmysqlclient16 libnet-daemon-perl libplrpc-perl mysql-client mysql-client-5.1 mysql-common mysql-server mysql-server-5.1 mysql-server-core-5.1 php5-mysql
Una vez acabada la instalación agregamos los repositorios para Debian-based LAMP servers.
root@atotclic6:/home/ernest# echo «deb https://packages.dotdeb.org squeeze all» >> /etc/apt/sources.list ojo las » » al copiar y pegar
Descargamos la llave
root@atotclic6:/home/ernest# wget https://www.dotdeb.org/dotdeb.gpg
La instalamos
root@atotclic6:/home/ernest# cat dotdeb.gpg | sudo apt-key add –
OK aquí nos comunica que ha ido bien
Actualizamos repositorios
root@atotclic6:/home/ernest# apt-get update
Una vez actualizados los repositorios instalamos el soporte para PHP
root@atotclic6:/home/ernest# apt-get install libgd2-noxpm libjpeg62 libonig2 libpng12-0 libqdbm14 libxml2 libxslt1.1 nginx nginx-common nginx-full php5-cgi php5-cli php5-common php5-fpm php5-suhosin
Ahora a configurar php-fpm, que es el que nos interesa, es el que manejara las instancias PHP como demonio.
root@atotclic6:/etc/php5# nano /etc/php5/fpm/php-fpm.conf
Tenemos que descomentar estas dos lineas
pid = /var/run/php5-fpm.pid
error_log = /var/log/php5-fpm.log
Una vez hecho cerramos. Luego creamos y añadimos permisos a los archivos.
root@atotclic6:/etc/php5# touch /var/run/php5-fpm.pid
root@atotclic6:/etc/php5# chown www-data:www-data /var/run/php5-fpm.pid
root@atotclic6:/etc/php5# touch /var/log/php5-fpm.log
root@atotclic6:/etc/php5# chown www-data:www-data /var/log/php5-fpm.log
root@atotclic6:/etc/php5# nano /etc/nginx/sites-available/default
Aquí descomentamos para que quede así.
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# # NOTE: You should have «cgi.fix_pathinfo = 0;» in php.ini
#
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}
#
Guardamos y cerramos. Configuramos el php.ini como nos dice en la nota
root@atotclic6:/etc/php5# nano /etc/php5/fpm/php.ini
descomentamos esta linea
cgi.fix_pathinfo=1
Guardamos y cerramos, y reiniciamos los servicios.
root@atotclic6:/etc/php5# /etc/init.d/nginx restart
Restarting nginx: nginx.
root@atotclic6:/etc/php5# /etc/init.d/php5-fpm restart
Restarting PHP5 FastCGI Process Manager: php5-fpm.
Creamos el info PHP.
root@atotclic6:/etc/php5# nano /usr/share/nginx/www/info.php
<?php
phpinfo();
?>
Guardamos y cerramos, abrimos el navegador https://192.168.1.33 y https://192.168.1.33/info.php
Vemos que funciona perfectamente Nginx , PHP y Mysql.
Continuamos con el siguiente post instalar WordPress en NginX.