# Cómo resolver el aviso de Nginx “an upstream response is buffered to a temporary file” en WordPress

- Link: https://binariocero.com/linux/como-resolver-el-aviso-de-nginx-an-upstream-response-is-buffered-to-a-temporary-file-en-wordpress
- Published: 2025-09-23T07:52:01+02:00
- Author: Juan José Fernández Durán

![Loading](https://binariocero.com/wp-content/plugins/page-views-count/ajax-loader-
2x.gif)

Cuando administramos servidores con **Nginx + PHP-FPM + WordPress**, es habitual
encontrarnos con advertencias en los logs como la siguiente:

    ```wp-block-code
    [warn] 785#785: *923 an upstream response is buffered to a temporary file /var/lib/nginx/fastcgi/1/01/0000000011 while reading upstream, client: 00.00.00.00, server: example.com, request: "GET /wp-admin/load-styles.php?..."
    ```

Aunque no se trata de un error crítico, este mensaje indica que **Nginx ha tenido
que escribir parte de la respuesta de PHP en disco** porque los buffers configurados
en memoria no eran suficientes. Esto ocurre con frecuencia en el área de administración
de WordPress (`/wp-admin`), donde se cargan muchos estilos y scripts de manera simultánea.

## ¿Por qué ocurre este aviso?

Nginx recibe la respuesta de PHP-FPM a través del _upstream FastCGI_. Para manejar
estas respuestas, utiliza buffers en memoria.
Si la respuesta es más grande de lo
que cabe en los buffers definidos, Nginx la **almacena temporalmente en disco**,
dentro de `/var/lib/nginx/fastcgi/`.

Esto no interrumpe el servicio, pero:

 * Aumenta la latencia (porque se accede a disco en lugar de memoria).
 * Genera I/O adicional en el servidor.
 * Puede degradar el rendimiento en sitios con mucho tráfico.

## Soluciones técnicas

### 1. Ajustar los buffers de FastCGI en Nginx

Podemos ampliar la configuración de buffers para que la mayoría de respuestas se
manejen directamente en memoria. En la configuración del bloque `server` o `location`
de WordPress (normalmente en `/etc/nginx/sites-available/`), añade:

    ```wp-block-code
    fastcgi_buffers 16 16k;
    fastcgi_buffer_size 32k;
    fastcgi_busy_buffers_size 64k;
    fastcgi_temp_file_write_size 64k;
    ```

Después recarga la configuración:

    ```wp-block-code
    sudo systemctl reload nginx
    ```

Con esto reduciremos la necesidad de usar archivos temporales.

### 2. Optimizar la carga de scripts en WordPress

Otra medida complementaria es **reducir la cantidad de CSS/JS cargados en el panel
de administración**. Plugins como:

 * **Asset CleanUp**
 * **Perfmatters**

permiten deshabilitar scripts y estilos que no son necesarios en ciertas páginas
del dashboard.

### 3. Revisar memoria en PHP-FPM

Si además del aviso de Nginx se observan errores de PHP relacionados con memoria
insuficiente, es recomendable revisar el límite configurado en `php.ini` o en el
pool de PHP-FPM (`/etc/php/8.4/fpm/pool.d/www.conf`):

    ```wp-block-code
    memory_limit = 256M
    ```

Un límite más alto puede ayudar a que PHP gestione mejor las peticiones pesadas 
de WordPress.

### 4. Verificar permisos de directorios temporales

Asegúrate de que Nginx puede escribir en el directorio de archivos temporales (`/
var/lib/nginx/fastcgi`). Normalmente los permisos están correctos tras la instalación,
pero si se modificaron manualmente podrían causar problemas más serios.

## Conclusión

El aviso _“an upstream response is buffered to a temporary file”_ en Nginx no implica
un fallo, pero sí es una señal de que las respuestas de PHP están siendo más grandes
de lo previsto.
La combinación de **ajustar los buffers de FastCGI**, **optimizar
la carga de scripts de WordPress** y **revisar la configuración de PHP-FPM** permite
reducir la escritura en disco, mejorar la velocidad de respuesta y alargar la vida
útil del servidor.
