/var/lib/nginx/client_body/0000000011 falló (13: permiso denegado) con node.js

/var/lib/nginx/client_body/0000000011 falló (13: permiso denegado) con node.js

Estoy usando node.jsNginx como servidor web ejecutándose en Slackware 14.1.

Creé una página que carga un archivo. En mi máquina de desarrollo (como Debian) funciona bien, pero en producción (servidor Slackware) aparece este error en /var/log/nginx/error.log:

2015/10/09 15:08:44 [crit] 1231#0: *5 open() "/var/lib/nginx/client_body/0000000003" failed (13: Permission denied), client: 10.0.0.22, server: localhost, request: "POST /home/perfil_usuario/upload HTTP/1.1", host: "aluno.fio.edu.br", referrer: "http://aluno.fio.edu.br/home/perfil_usuario/upload"

Y Nginx devuelve un archivo 500 Internal Server Error.

Busqué y probé las correcciones de muchas publicaciones pero el error continúa.

Respuesta1

Como dice el mensaje de error, este es unPermisosasunto.

Esto generalmente se debe a que el usuario del proceso nginx ( www-datapor ejemplo) no tiene acceso de lectura/ejecución a uno de los directorios principales.

Verifique /var/lib/nginx/client_body/y asegúrese de que el permiso sea correcto en cada nivel de directorio para resolver el problema.

Respuesta2

En mi caso, el problema fue que la propiedad de /var/lib/nginx era incorrecta. Todos los demás directorios en los que escribe nginx eran propiedad de www-data, mientras que el directorio 'nginx era propiedad de root. En este caso, la mejor solución es cambiar la propiedad del directorio para que coincida con la de los otros directorios en los que escribe nginx.

Respuesta3

En mi caso, la propiedad de /var/lib/nginx se estableció en www-data:adm y el permiso se estableció en 770

Los cambios sí me funcionaron.

  1. raíz de chown: raíz /var/lib/nginx/
  2. chmod 0755 /var/lib/nginx

Además, /var/lib/nginx/tmp era diferente. Se actualizó la propiedad y el permiso según los puntos 1 y 2.

y se mencionó el contenido dentro de /var/lib/nginx/tmp

drwx------. 2 www-data root 6 29 de septiembre 23:37 uwsgi

drwx------. 2 raíz de datos www 6 29 de septiembre 23:37 scgi

drwx------. 2 www-data root 6 29 de septiembre 23:37 fastcgi

drwx------. 10 www-data root 78 20 de octubre 12:17 proxy

drwx------. 2 www-data root 6 20 de octubre 12:20 client_body

Después de configurar estos permisos y propiedad, reinicie nginx. Y no verá el error de permiso denegado y Nginx dejó de dar un error interno del servidor 500 y estaba viendo el resultado esperado. Gracias

información relacionada