我正在使用 Laravel 工作人员来执行一些后台任务。当我使用 'php artisan queue:work' 调用工作人员时,它可以正常工作
但是当我在 CentOS 中将相同的命令添加到 supervisord 时,使用以下配置:
[程序:laravel-worker]
process_name=%(program_name)s_%(process_num)02d command=php
/var/www/html/laravel/工匠队列:工作
自动启动=真
自动重启=真
用户=根
numprocs=8
重定向标准错误=真
stdout_logfile=/var/www/html/laravel/worker.log
我收到以下错误:
PHP 致命错误:在第 169 行的 /var/www/html/laravel/app/External/library/RegistrationService.php 中找不到类“SoapClient”
[Symfony\Component\Debug\Exception\FatalErrorException] 类 'SoapClient' 未找到
作业未执行,抱怨未找到 SoapClient(尽管已安装)。SoapClient 类由我在外部加载的普通 PHP 类继承。
请注意,当从命令行执行时,我可以通过控制器或作业使用此类,而不会出现任何问题,只有在 supervisord 中它才会给我错误消息。更奇怪的是,它只发生在一个使用这个外部类的作业上,它不会发生在只使用 Laravel 的类(控制器、事件等)的作业上。