Laravel Horizon выдает ошибку: вызов неопределенной функции Laravel \ Horizon \ Console \ pcntl_async_signals () - PullRequest
0 голосов
/ 07 февраля 2019

я успешно установил и настроил laravel-horizon согласно документации

когда я запускаю эту команду php artisan horizon

она выдает ошибку ниже:

Symfony \ Component \ Debug \ Exception \ FatalThrowableError: вызов неопределенной функции Laravel \ Horizon \ Console \ pcntl_async_signals ()

enter image description here

Когда я открываю http://127.0.0.1:8000/horizon/dashboard, статус панели мониторинга горизонта всегда неактивен

enter image description here

Я использую XAMPP, версия PHP7.3.0, версия Laravel 5.7

Я перешел по этой ссылке: https://github.com/laravel/horizon/issues/154#issuecomment-366712260

composer require ext-pcntl ext-posix

вот композитор:

"require": {
        "php": "^7.1.3",
        "ext-pcntl": "^7.2",
        "ext-posix": "^7.2",
        "fideloper/proxy": "^4.0",
        "laravel/framework": "5.7.*",
        "laravel/horizon": "^2.0",
        "laravel/socialite": "^4.0",
        "laravel/tinker": "^1.0",
        "predis/predis": "^1.1",
    },

У меня так много вопросов, но не повезло, я тоже попробовал composer update --ignore-platform-reqs, но все еще не работает.

Кто-нибудь, пожалуйста, помогите мне запустить Laravel Horizon в моей локальной системе

1 Ответ

0 голосов
/ 07 февраля 2019

После 2 часов поиска я наконец-то исправил ошибку:

Поскольку я использую XAMPP, мне нужно установить PATH в bash_profile файле, чтобы использовать php 7.3.0

в XAMPP, чтобы ядобавил это в

sudo nano ~/.bash_profile

export XAMPP_HOME=/Applications/XAMPP
export PATH=${XAMPP_HOME}/bin:${PATH}

, затем перезагрузите bash_profile, используя,

source ~/.bash_profile

, затем я проверил версию php по

php -v

, она отобразится ниже:

PHP 7.3.0 (cli) (сборка: 11 декабря 2018 г. 01:01:47) (NTS) Copyright (c) 1997-2018 PHP Group Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies

, затем я проверяю php -i | grep pcntl

, на нем будет отображаться:

поддержка pcntl => включена

, поэтому я пытаюсь запустить php artisan horizon, снова получаю ту же ошибку после включения pcntl

Я пытался запустить composer dump-autoload, поэтому получил новую ошибку

enter image description here

, поэтому для решения этой ошибки я добавил pcre.jit=0 в php.ini file

Applications/XAMPP/xamppfiles/etc/php.ini

по этой ссылке: https://github.com/composer/composer/issues/7836#issuecomment-447287797

окончательно перезапустил сервер apache из XAMPP и запустил composer dump-autoload

затем последний запуск php artisan horizon дает мне более чистый вывод, например

Horizon успешно запущен.

...