Optimizando Nginx Usando PHP en Ubuntu Para Alto Trafico

  • Autor Autor Zahi
  • Fecha de inicio Fecha de inicio
Z

Zahi

Dseda
Optimizando Nginx Usando PHP en Ubuntu Para Alto Trafico


1412239.webp



Buenas amigos del foro, en esta ocasión les traigo una optimización de Nginx con PHP en ubuntu para un alto rendimiento tanto en un vps o cloud servers, en muchos casos esta optimización la he usado para mis webs de Publicidad algo que realmente requiere una buena configuración sin afectar la visita, esto en muchos casos mejorara el posicionamiento Web.


Lo primero vamos a usar putty para mejor meditación de nuestra configuración.

Una vez dentro del SSH Vamos a ejecutar:

Insertar CODE, HTML o PHP:
cat /proc/cpuinfo | grep processor

Luego de esto, este comando les dara o les otorgara la informacion de cuantos cores tiene su servidor VPS o Dedicado.

Realizare un ejemplo de que mi vps tiene 4 cores.

Comenzemos con la Optimizacion:

1- Ejecutamos el comando:
Insertar CODE, HTML o PHP:
sudo nano /etc/nginx/nginx.conf

2- Verificamos que la linea:
Insertar CODE, HTML o PHP:
[B][COLOR=#ff0000]worker_processes 4;[/COLOR][/B]

3- Por defaul de nginx viene con conexiones simultaneas Off y conexiones entrantes 768 eso lo vamos a editar.

Insertar CODE, HTML o PHP:
[COLOR=#000080][B]worker_connections 768;[/B][/COLOR]

Lo editamos asi:
Insertar CODE, HTML o PHP:
[COLOR=#ff0000][B]worker_connections 2048;[/B][/COLOR]

Ahora desbloqueamos conexiones simultaneas:
Insertar CODE, HTML o PHP:
[B][COLOR=#000080]# multi_accept on;[/COLOR][/B]

Solo deben quitar el # y debera quedar asi:
Insertar CODE, HTML o PHP:
[COLOR=#ff0000][B]multi_accept on;[/B][/COLOR]

En la parte de Log Sessions:

Eliminen las Lineas de access_log y error_log

Estas lineas en muchos casos alteran el servidor vps y dedicado para un alto trafico. (Recomendado desactivar para usuarios de conocimientos intermedios, para tener certeza que no hay errores en sus scripts.)

Ahora una vez eliminadas deben colocar estas lineas:

Insertar CODE, HTML o PHP:
[B][COLOR=#ff0000]access_log off;
log_not_found off;
error_log /var/log/nginx-error.log warn; [/COLOR][/B]

Nos ubicamos un poco mas abajo y vamos a habilitar el gzip, Si en muchos casos esta habilitada elimine las lineas correctamente y coloque las que vera aca:

Insertar CODE, HTML o PHP:
[B][COLOR=#ff0000]gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_min_length 1100;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript; [/COLOR][/B]

Ahora un poco arriba casi top, podran encontrar estas lineas:

Insertar CODE, HTML o PHP:
[COLOR=#000080][B]sendfile on;
tcp_nopush on;
tcp_nodelay on;[/B][/COLOR]

Debajo de ella esta tambien el famoso:
Insertar CODE, HTML o PHP:
[B][COLOR=#000080]keepalive_timeout[/COLOR][/B]

Reemplazen esas lineas y todo debera quedar asi:
Insertar CODE, HTML o PHP:
[COLOR=#ff0000][B]client_body_buffer_size 1m;
client_body_timeout 15;
client_header_timeout 15;
keepalive_timeout 2 2;
send_timeout 15;
sendfile on;
tcp_nopush on;
tcp_nodelay on;[/B][/COLOR]

Importante una vez hecho esto, Ctrl + X y Enter.

Reiniciamos el Nginx:
Insertar CODE, HTML o PHP:
[B][COLOR=#ff8c00]sudo service nginx restart[/COLOR][/B]


Espero que les guste el tema, con esto en muchos casos se ahorran grandes servidores que la verdad por malas configuraciones el usuario vota dinero y bueno saludos y espero sus gracias.!
 
Hola no esta mal... Y la config de PHP?
Worker_processes es igual al número de cores disponibles

Saludos
 
Hola no esta mal... Y la config de PHP?
Worker_processes es igual al número de cores disponibles

Saludos

Si amigo correcto, es el numero de cores que tiene disponibles.

En otro post publicare como optimizar el php con nginx no lo coloque directamente en el tema para que los usuarios tengan un mejor entendimiento.
 
Hola, excelente post, hoy empezaré a optimizar mi VPS.

Te pregunto, ¿tienes idea de cómo establecer el tiempo de caché del navegador en NGINX?

¡Saludos!
 
Burn tutorial! Das buenos consejos, y todo bien detallado


Enviado desde mi iPad utilizando Tapatalk
 
Hola, excelente post, hoy empezaré a optimizar mi VPS.

Te pregunto, ¿tienes idea de cómo establecer el tiempo de caché del navegador en NGINX?

¡Saludos!

Si en otro post publicare la optimizacion del php y el extra del cache. que es muy importante.
 
Hola, en el último paso además de estas lineas:

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout

También hay otra que es esta:
types_hash_max_size 2048;

La opción que das reemplaza las 4 primeras lineas o también la última? (o sea las 5 líneas)
 
Hola, en el último paso además de estas lineas:

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout

También hay otra que es esta:
types_hash_max_size 2048;

La opción que das reemplaza las 4 primeras lineas o también la última? (o sea las 5 líneas)

Solo reemplaza las primeras 4, es las mismas solo las coloco por si acaso.

La linea:
Insertar CODE, HTML o PHP:
[B]types_hash_max_size 2048;[/B]

Debes dejarla hay. Recuerda no comerte las
Insertar CODE, HTML o PHP:
[B];[/B]
 
Solo reemplaza las primeras 4, es las mismas solo las coloco por si acaso.

La linea:
Insertar CODE, HTML o PHP:
[B]types_hash_max_size 2048;[/B]

Debes dejarla hay. Recuerda no comerte las
Insertar CODE, HTML o PHP:
[B];[/B]

Ok, mil gracias! Estaré pendiente del de PHP
 
Atrás
Arriba