Para mí fue algo diferente que resultó en este error
mismo nombre de usuario con dos UID diferentes
Tengo el usuario "apache" configurado localmente con UID = 123 y en el directorio NIS con el mismo nombre ("apache") pero diferente UID = 456. Dependiendo del orden de inicio y la dependencia del servicio, el usuario local podría usarse antes de que el usuario NIS esté disponible. Eso también significa que, cuando muestra nombres de usuario, esto será confuso, ambos aparecerán como "apache". Solo cuando observa los UID numéricos (por ejemplo, al hacerlo ls -ln
verá la diferencia. Ejemplo:
[root@mymachine]# ls -l
drwxr-x--- 4 apache ggg1 88 May 31 17:12 file1
drwxr-x--- 4 apache ppp2 88 May 31 17:12 file2
vea que el UID es diferente para el archivo 2 (456 en lugar de 123):
[root@mymachine]# ls -ln
drwxr-x--- 4 123 48 88 May 31 17:12 file1
drwxr-x--- 4 456 48 88 May 31 17:12 file2
diferente grupo definido en la configuración de Apache
Otro problema que tuve con la falta de coincidencia del usuario y el error de permiso resultante, fue cuando estaba restringiendo el acceso a los archivos usando el grupo "httpd". Este fue el grupo principal de usuarios "apache" (que se mostró usando id
o getent
) Apache se inicia como root, luego cambia al usuario configurado y deja caer el permiso. El usuario al que cambia está definido /etc/httpd/conf/httpd.conf
por User
parámetro. Sin embargo, aquí está el problema: el grupo (GID) en el que se ejecutará el proceso, ya que NO es el grupo principal de ese usuario. El grupo se define en el mismo archivo de configuración por Group
parámetro.
Entonces en mi caso fue ( /etc/httpd/conf/httpd.conf ):
User apache
Group apache
Y el directorio obtuvo acceso de esta manera:
drwxr-x--- 4 someuser httpd 88 May 31 17:12 mydir
Debido a que httpd (GID = 444) era el grupo principal de ese usuario:
[root@somemachine]# id apache
uid=48(apache) gid=444(httpd) groups=444(httpd)
Resultó en algún tiempo dedicado a la depuración hasta que me di cuenta de que el Group
archivo de configuración era "apache" y no "httpd".
Error de / var / log / httpd / error_log :
[Fri May 31 17:13:40.070343 2019] [authz_core:debug] [pid 2527] mod_authz_core.c(809): [client 11.22.32.21:53824] AH01626: authorization result of Require all granted: granted
[Fri May 31 17:13:40.070367 2019] [authz_core:debug] [pid 2527] mod_authz_core.c(809): [client 11.22.32.21:53824] AH01626: authorization result of <RequireAny>: granted
[Fri May 31 17:13:40.070396 2019] [core:error] [pid 2527] (13)Permission denied: [client 11.22.32.21:53824] AH00132: file permissions deny server access: /var/www/html/somedir/otherdir/css/file1.txt
Espero que esto ayude.