Nginx se perfila cada vez más claramente como una alternativa a Apache: las razones son varias, por un lado Nginx es mucho más ligero que el famoso rival e igual de poderoso.
Nginx se utiliza junto con PHP FPM (FastCGI Process Manager), una versión de PHP optimizada para sitios con mucho tráfico.
A continuación os dejamos con los pasos necesarios para instalar Nginx y PHP FPM en Ubuntu Lucid Lynx:
- Lo primero empezamos instalando Nginx:
sudo apt-get install nginx
- Después editamos la configuración por defecto:
sudo vim /etc/nginx/sites-available/default
insertamos el siguiente contenido:
server ( listen 80; server_name localhost; access_log / var / log / nginx / localhost.access.log; # # Default location location / ( root / var / www; index index.php; ) # # Images and static content is Treated Different location ~ * ^.+.( jpg | jpeg | gif | css | png | js | ico | xml) ($ access_log off; expires 30d; root / var / www; ) # # Parse all. Php files in the / var / www directory location ~. php $ ( fastcgi_split_path_info ^ (. + . )(.*)$; php fastcgi_pass backend; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME / var / www $ fastcgi_script_name; includes fastcgi_params; fastcgi_param QUERY_STRING $ query_string;fastcgi_param REQUEST_METHOD $ REQUEST_METHOD; fastcgi_param content_type $ content_type; fastcgi_param CONTENT_LENGTH $ content_length; fastcgi_intercept_errors on; fastcgi_ignore_client_abort off; fastcgi_connect_timeout 60; fastcgi_send_timeout 180; fastcgi_read_timeout 180; fastcgi_buffer_size 128k, 256k fastcgi_buffers 4; fastcgi_busy_buffers_size 256k, 256k fastcgi_temp_file_write_size;) # # Disable viewing. htaccess &. htpassword location ~ / . ht (deny all;)) upstream backend (server 127.0.0.1:9000;)
- Antes de instalar PHP realizamos un update:
sudo apt-get update
- Una vez terminado procedemos a instalar PHP:
sudo apt-get install php5-cli php5-common php5-Suhosin
- Para instalar PHP-FPM es necesario añadir un repositorio externo:
add-apt-ppa repository: brianmercer / php
sudo apt-get update && sudo apt-get install php5-cgi php5-fpm
- Reiniciamos Nginx para que cargue la nueva configuración:
sudo /etc/init.d/nginx restart
- Si cambias el archivo php.ini recuerda reiniciar PHP-FPM
sudo /etc/init.d/php5-fpm restart
- Para comprobar que todo fue bien creamos el archivo index.php en /var/www con el siguiente contenido:
<? php phpinfo (); ?>
Después usamos un navegador para acceder a este archivo y comprobamos que todo esté correcto ( http://localhost/index.php )
Saludos desde lo más profundo de los bytes.
El contenido de default es incorrecto, se añaden espacios en blanco donde no deberia haberlos y da multitud de errores al iniciar nginx