Advertencia de Laravel 8.0 con Nexmo-Bridge
Tengo un problema desde que actualicé a Laravel 8.0 con Vonage/Nexmo. El sitio web sigue funcionando, pero los CronJobs no funcionan (¿quizás debido al aviso?).
Aquí está el aviso que aparece en el registro de errores de Apache:
Se produjo el error ‘PHP message: PHP Warning: file_exists(): open_basedir restriction in effect. File(/autoload.php) is not within the allowed path(s): (/home/webapps/preprod/:/var/lib/php/session:/tmp) in /home/webapps/preprod/vendor/vonage/nexmo-bridge/src/Autoloader.php on line 69’
Mi composer.json:
“require”: {
“php”: “^7.3|^8.0”,
“guzzlehttp/guzzle”: “^6.3.1|^7.0.1”,
“nexmo/laravel”: “^2.4.1”,
“vonage/nexmo-bridge”: “^0.1.0” (este se agregó después de la actualización pero el problema aún persiste)
He intentado agregar la carpeta al directorio open_basedir, pero el aviso todavía aparece.
¿Alguien puede indicarme en la dirección correcta? ¿O es posible hacer que Cronjob ignore los avisos?
Gracias
davy.ai
Solución para el problema de Cronjobs de Laravel 8.0 – Vonage/Nexmo
Descripción del problema
Después de actualizar a Laravel 8.0 con Vonage/Nexmo, los Cronjobs no funcionan debido a la advertencia. El registro de errores muestra un PHP Warning para
file_exists(): open_basedir restriction in effect
con la ruta/autoload.php
.Solución
Para solucionar este problema de Cronjobs de Vonage/Nexmo, sigue los siguientes pasos:
Paso 1:
Abre tu archivo
composer.json
y verifica si se incluye"vonage/nexmo-bridge": "^0.1.0"
o no. Si no se incluye, agrega este paquete al objeto require de tu composer utilizando el siguiente comando:Paso 2:
Después de agregar el paquete, ejecuta el siguiente comando para actualizar el composer:
Paso 3:
Una vez que el composer se haya actualizado correctamente, agrega el siguiente código a tu archivo
bootstrap/app.php
:Luego, agrega la siguiente línea a tu archivo
config/app.php
de Laravel:Paso 4:
Edita tu archivo
php.ini
y agrega la siguiente ruta aopen_basedir
:Paso 5:
Reinicia tu servidor web Apache.
Conclusión
Después de completar todos los pasos anteriores, tus aplicaciones de Laravel 8.0 con Vonage/Nexmo deberían poder ejecutar Cronjobs sin problemas. Si aún encuentras problemas, intenta contactar a los equipos de soporte de Vonage o Laravel para obtener más ayuda.