¿Cómo solucionar el error `is_readable(): open_basedir constraint in effect. AWS path warning` del plugin BackWPup de WordPress?

Cuando abrí el panel de administración de WordPress como de costumbre , estaba listo para revisar los registros de copias de seguridad.

Entonces, vi un montón de amarillos.

Advertencia, advertencia y más advertencia.

警告: is_readable(): open_basedir restriction in effect. 
File(/home/admin/.aws/config) is not within the allowed path(s): (...)

La copia de seguridad se completó sin interrupciones, pero la barra de estado estaba completamente amarilla, lo cual resultaba muy molesto a la vista.

¿Conoces esa sensación? Es como si enviaras una solicitud de extracción, todos los CI estuvieran en verde, pero apareciera una advertencia de lint. Sabes que no afectará al funcionamiento, pero aun así te sientes incómodo.

Lo pensé por un momento.

¿Se puede solucionar este problema por completo?

¿Cómo solucionar el error `is_readable(): open_basedir constraint in effect. AWS path warning` del plugin BackWPup de WordPress?

La verdadera razón de la advertencia de BackWPup: el SDK de AWS activó el límite de open_basedir.

Sinceramente, al principio pensé que era un problema con el plugin de copia de seguridad BackWPup, ya que la advertencia aparecía en sus registros.

Pero al examinarlo más de cerca, algo no cuadraba.

La advertencia mencionaba un camino./home/admin/.aws/configDurante la inicialización, el SDK de AWS busca automáticamente el directorio de configuración predeterminado de AWS del usuario actual.

Suena un poco complicado, ¿verdad?

Básicamente, esto significa que si instalas un plugin relacionado con AWS en WordPress, como el almacenamiento S3 o CloudFront, todos estos plugins utilizan el SDK de AWS como base. Cuando se inicia el SDK de AWS, este buscará automáticamente las herramientas de instalación en tu directorio personal..awsEsta carpeta contiene archivos de configuración y credenciales.

Sin embargo, por razones de seguridad, el servidor PHP abrió una...open_basedirBásicamente, esto es como delimitar un territorio en el servidor e indicarle a PHP que solo puede moverse dentro de ese territorio y no deambular libremente.

/tmpEl directorio está en la lista blanca, el directorio del sitio web está en la lista blanca, pero su directorio, lo siento, no lo está.

Cuando el SDK de AWS intenta acceder a su directorio, se bloquea.

Entonces apareció la advertencia.

La forma correcta de resolver las advertencias de open_basedir es redirigir la ruta de configuración de AWS.

Para ser honesto, mi primera reacción fue cambiarlo.open_basedirConfigurar, poner/home/adminAñádelo.

Pero luego lo pensé de nuevo y me di cuenta de que eso no estaba bien.

Cometiste un error. El formato es incorrecto. Olvidaste una barra inclinada y añadiste un espacio extra. Esto provocó un error 500 y el sitio web desapareció.

yopen_basedirSe abrió por motivos de seguridad. Si lo abres, básicamente le estás dando al servidor una vulnerabilidad, lo cual no vale la pena.

¿Existe una forma más segura?

Lo pensé un momento, ya que el SDK de AWS es lo que necesitas encontrar.../home/admin/.aws/config¿Puedo engañarlo para que busque este archivo en otro lugar?

Ve a uno de los lugares que ya están en la lista blanca.

Soluciona las advertencias de WordPress BackWPup: Añade dos líneas de código a wp-config.php.

La solución es, en realidad, ridículamente simple.

En WordPresswp-config.phpSolo tienes que añadir dos líneas de código al archivo.

// 解决 AWS open_basedir 警告的环境变量设置
putenv('AWS_CONFIG_FILE=' . __DIR__ . '/wp-content/uploads/.aws_config');
putenv('AWS_SHARED_CREDENTIALS_FILE=' . __DIR__ . '/wp-content/uploads/.aws_credentials');
putenv('AWS_EC2_METADATA_DISABLED=true');

/* That's all, stop editing! Happy publishing. */

añadir/* That's all, stop editing! Happy publishing. */Simplemente ve por encima de esta línea.

Solo estas tres líneas.

Ido.

Verificación del efecto de la reparación: Los registros de copias de seguridad de BackWPup han vuelto a la normalidad.

Después de realizar los cambios, vuelva al panel de administración de WordPress, abra BackWPup y haga clic en "Ejecutar ahora".

Compruebe los registros una vez finalizada la ejecución.

Las advertencias de color amarillo brillante han desaparecido, sustituidas por mensajes verdes que indican que la operación se ha completado con éxito.

Es muy suave.

Dos líneas de código, riesgo cero, menos de 10 segundos para modificarlas, y el problema quedó completamente resuelto.

Este tipo de problemas, que si bien no son graves, resultan molestos, son los que más tiempo consumen. Porque no sabes si empeorarán repentinamente tras una actualización, ni si afectarán a otros complementos.

Si algo se puede eliminar por completo con dos líneas de código, entonces no lo dejes estorbando.

Bueno, eso es todo por este artículo.

Dado que este asunto no es complicado, no necesito proporcionarles ningún conocimiento previo, análisis del sector ni tendencias futuras.

Es solo una pequeña advertencia en el panel de administración de WordPress, y se soluciona con dos líneas de código.

Con suerte, la próxima vez que veas esa advertencia amarilla, te acordarás de este artículo.

Esperamos que el artículo "Cómo resolver el problema de la restricción de open_basedir en el plugin WordPress BackWPup (is_readable(): AWS path warning?", compartido en el blog de Chen Weiliang ( https://www.chenweiliang.com/ ), le sea útil.

No dudes en compartir el enlace de este artículo: https://www.chenweiliang.com/cwl-34455.html

Para desbloquear más trucos ocultos🔑, ¡bienvenido a unirse a nuestro canal de Telegram!

¡Comparte y dale me gusta si te gusta! ¡Tus acciones y me gusta son nuestra motivación continua!

 

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

Ir al Inicio