Desde la página de administración de wordpress, recibo constantemente PHP warning, prácticamente a cada acción.
Concretamente son 36 warnings, que se corresponden con los archivos contenidos en la carpeta: /wp-content/plugins/woocommerce/patterns/
A modo de ejemplo, copio 1 warning:
PHP Warning: file_exists(): open_basedir restriction in effect. File(/home/customer/www/ursulacampos.com/public_html/wp-content/plugins/woocommerce/patterns/banner.php) is not within the allowed path(s): (/home/hosting1614eu:/home2/hosting1614eu:/usr/local/wepanel/filemanager:/usr/lib/php:/usr/local/lib/php:/tmp:/usr/local/bin/wp:/usr/local/bin/composer:/usr/local/softaculous:/usr/local/wepanel/i360:/opt/alt/php82) in /home2/hosting1614eu/public_html/ursulacampos.com/wp-content/plugins/woocommerce/src/Blocks/Patterns/PatternRegistry.php on line 155
Contenido solo visible a usuarios registrados
Hola Hermes,
Este error puede generarse debido a restricciones de open_basedir en tu servidor, impidiendo que WooCommerce acceda a ciertos archivos. No es crítico y no afecta el funcionamiento principal. Para solucionarlo verifica que WooCommerce esté bien instalado o si tienes alguna actualización pendiente, si es así actualiza plugins no solo WooCommerce.
Si la alerta continua puedes proba enviar un ticket a soporte para que verifiquen todo está correcto en tu cuenta.
De manera general si todo funciona bien, puedes ignorarlo temporalmente y revisar si en próximas actualizaciones esto se soluciona.
Un Saludo
@karen Hola Karen,
Anteriormente ya he escrito a soporte indicando que eliminen las restricciones y su respuesta fue que para cuestiones de plugin, escriba en el foro.
Tengo todo actualizado plugins+tema+wordpress.
No todo funciona bien, el día sábado se produjeron picos de consumo. Desde soporte me indicaron que realizara unas optimizaciones, las optimizaciones ya están hechas, pero estos warning están ahí a cada paso en el área de administración de wordpress.
¿Qué puedo hacer?
Hola Hermes.
El aviso es por que WordPress (o un plugin) está intentando acceder a un archivo fuera de las rutas permitidas por la configuración de open_basedir en el servidor.
open_basedir es una medida de seguridad en PHP que restringe el acceso a archivos solo dentro de ciertos directorios especificados.
En este caso, WooCommerce está tratando de acceder a:
Contenido solo visible a usuarios registrados
Es un traslado ?
Podemos probar algo antes de ver las opciones del hosting:
.- Elimina por completo el plugin de WooCommerce ( Esto no eliminará los datos que tienes ahora )
.- Accede a tu cuenta de WePanel -> Administrador de archivos.
.- Accede a la carpeta donde tienes la instalación, edita el archivo error_log y vacía todo lo que hay en ese archivo
.- Accede a wp-admin y realiza lo mismos con el archivo error_log que se encuentra en esa carpeta.
.- Instala de nuevo el plugin WooCommerce
Comprueba si ya no se generan esos avisos en el archivo error_log
Un saludo
Hola Pepe @pepesoler
Sí, es un traslado. He insistido en soporte que me ayuden a solucionarlo. Pero han insistido en que me dirija al foro.
Lo que comentas ya lo he hecho.
1. Eliminé woocommerce.
2. Hice una instalación nueva desde el repositorio oficial
3. Limpié todos los transcient (archivos temporales)
4. Moví los archivos _log a la carpeta logs de la raiz
5. Comprobé que los warning se siguen generando (Concretamente pude ver que son 36 warnings, porque el archivo log estaba vacío)
6. Escribí al foro
Hola Hermes.
Perdon por la espera pero hemos tenido que revisar exactamente de donde venía y al parecer es de restos que se arrastran de la configuración del otro hosting, en este caso parece que es de _site_transient_woocommerce_blocks_patterns.
El valor _site_transient_woocommerce_blocks_patterns es un transient de WooCommerce, lo que significa que es un dato temporal que WooCommerce almacena en la base de datos para mejorar el rendimiento y evitar consultas repetitivas y puede que aún esté almacenando la URL anterior.
Vamos a eliminarlo desde phpMyAdmin
.- Accede a tu cuenta de WePanel -> Bases de datos -> phpMyAdmin
.- Selecciona la base de datos que utiliza tu instalación
.- Selecciona la pestaña SQL
.- Añade lo siguiente en la celda Consultas:
DELETE FROM wp_options WHERE option_name = '_site_transient_woocommerce_blocks_patterns';
Woocommerce lo volverá a crear con la nueva ruta.
.- vacía los archivos error_log de la raiz de la instalación y el que se encuentra dentro de wp-admin
Comprueba si ya no se registran esos errores.
Un Saludo
Buenas tardes Pepe @pepesoler
Era ese registro. Después de eliminarlo los archivos error_log se mantienen vacíos.
Verificando la BD, el registro ya se ha creado nuevamente, esta vez con la ruta correcta de los archivos.
Muchas gracias por tu tiempo y tu ayuda.
Feliz tarde.
Hola Hermes.
Genial Me alegra muchísimo que se solucionara.
Cualquier consulta que tengas no dudes en comunicarlo.
Un Saludo