Entonces, cuando estoy probando localmente cosas como Ajax en las aplicaciones que estoy escribiendo, a menudo me gusta agregar un retraso en los scripts del lado del servidor usando una sleep
declaración. Ayuda a simular conexiones lentas, etc.
¿Hay alguna manera de especificar un comportamiento de retraso similar directamente en la configuración de Nginx que funcione para los archivos HTML planos que sirve?
Soy consciente de que puedes hacer una simulación de retraso similar a nivel de red (mira aquí ), pero parece bastante desordenada y nunca me ha funcionado muy bien.
Respuestas:
Deberías probar un módulo de eco.
fuente
Me gustaría agregar a la respuesta de astlock que si desea responder con claridad,
return
tenga en cuenta que hay una advertencia: debe usarecho
, no unareturn
directiva estándar , despuésecho_sleep
de responder con retraso, como este:(Probado en openresty / 1.7.10.2)
fuente
Dando una explicación más detallada de cómo podría usar el módulo echo:
Si está comenzando desde una configuración básica, que carga archivos estáticos y archivos PHP, con algo como esto:
Eso se puede convertir en algo como esto para agregar un retraso a las solicitudes estáticas y PHP:
Obviamente, esto se puede modificar para cualquier cosa que desee. Básicamente, mueva cada bloque de ubicación a una ubicación @ con nombre. Luego use
echo_sleep
yecho_exec
en el bloque de ubicación original.fuente
puede configurar un servidor de fondo para recibir la solicitud y luego retrasar la respuesta en el servidor. Nginx proxy de la solicitud al servidor de fondo.
fuente
No hay forma (IHMO) de retrasar la respuesta de nginx. Debe habilitar su aplicación, no su servidor web, para habilitar dicha función.
fuente