Advertencia PHP: chmod(): Operación no permitida en class-wp-filesystem-direct.php en la línea 173
Estoy ejecutando una instancia de WordPress en mi servidor web pero estoy obteniendo este error en los logs
PHP Warning: chmod(): Operación no permitida en
/home/webserver/html/wp-admin/includes/class-wp-filesystem-direct.php en la línea 173,
referer: http:// mysite.com/
Revisé el archivo class-wp-filesystem-direct.php
en la línea 173
aquí está la línea:
if ( ! $recursive || ! $this->is_dir( $file ) ) {
return chmod( $file, $mode );
}
Estos son los permisos de este archivo:
-rwxrwxr-x 1 root apache 17K Oct 20 20:24 /home/webserver/html/wp-admin/includes/class-wp-filesystem-direct.php
¿Alguno de ustedes sabe qué está mal con mi instancia de WordPress?
Realmente apreciaré su ayuda.
¿Quieres decir que tenías archivos allí con permisos incorrectos? ¿Por qué WordPress intentaría hacer chmod en esos?

@Rup bb-plugin intentó acceder a estos archivos usando la API de archivos de WP. No recuerdo si el plugin intentó crear nuevos archivos o modificar los existentes.

hmm, hice ls -l en cada archivo en uploads pero no puedo encontrar el archivo que causa el error. Estoy desarrollando localmente con XAMPP en un macbook. Pero de repente no puedo actualizar mis plugins

Debes cambiar la propiedad de "root" a "www-data". www-data es el usuario web para apache2.
sudo chown www-data /var/www/html/[yourwebsitefolder]/wp-admin/includes/class-wp-filesystem-direct.php
o mejor aún, cambiar todos los archivos de la carpeta wp-admin de forma recursiva
sudo chown www-data /var/www/html/[yourwebsitefolder]/wp-admin/ -R

Necesitas verificar el usuario bajo el cual se está ejecutando tu servidor web, así como el usuario propietario y grupo de los archivos dentro de tu carpeta wp-content.
Si el usuario del servidor web no es el mismo que el propietario de los archivos, o no pertenece al mismo grupo, entonces este error ocurre porque el script, al intentar regenerar los diferentes tamaños de la imagen original, no tiene permiso para reemplazar los archivos y por lo tanto muestra el error mencionado.
