出于安全原因,pcntl_async_signals() 已被禁用 || Ubuntu 16 - Laravel 5.6

JIt*_*ana 3 php pcntl ubuntu-16.04 php-7.2 laravel-5.6

我有一台在 Ubuntu 16.04 上运行的服务器,在 PHP 7.2.8 版上运行 Laravel 应用程序 5.6.29 版。

我已经设置了一些队列作业来将视频上传到服务器并编译它们并上传到 s3 存储桶。突然从过去几个小时开始,我面临以下问题。

出于安全原因,pcntl_async_signals() 已被禁用

我也尝试过此线程中的解决方案/sf/answers/1138404571/
它也没有帮助。

在此处输入图片说明


编辑:我也尝试重新启动队列工作器,手动运行队列工作器。还尝试重新启动 supervisorctl。

sudo supervisorctl restart all
php artisan queue:restart
php artisan queue:work
Run Code Online (Sandbox Code Playgroud)

小智 8

检查您的 php.ini 配置。你会发现一行:

disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid........
Run Code Online (Sandbox Code Playgroud)

您需要删除队列驱动程序调用的任何函数,例如 pcntl_async_signals、pcntl_async_signals、pcntl_alarm、pcntl_signal。