2016-07-05 5 views
1

У меня есть тот же код, который работает при запуске с помощью командной строки. Но при попытке запустить его с браузером он вызывает ошибку ниже.php-amqplib libarary работает в командной строке, но не в браузере

Я использовал php-amqplib. Мой код просто подключается к RabbitMQ Queue и отправляет сообщение в очередь. Учетные данные верны, так как я могу запустить тот же файл в командной строке.

Notice: iconv_strlen(): Detected an illegal character in input string in /var/www/html/php-amqplib/vendor/symfony/polyfill-mbstring/Mbstring.php on line 338

Notice: iconv_strlen(): Detected an illegal character in input string in /var/www/html/php-amqplib/vendor/symfony/polyfill-mbstring/Mbstring.php on line 338

Notice: iconv_strlen(): Detected an illegal character in input string in /var/www/html/php-amqplib/vendor/symfony/polyfill-mbstring/Mbstring.php on line 338

Fatal error: Uncaught PhpAmqpLib\Exception\AMQPRuntimeException: Error reading data. Received instead of expected 7 bytes in /var/www/html/php-amqplib/PhpAmqpLib/Wire/IO/StreamIO.php:242 Stack trace:

0 /var/www/html/php-amqplib/PhpAmqpLib/Wire/AMQPReader.php(149): PhpAmqpLib\Wire\IO\StreamIO->read(7)

1 /var/www/html/php-amqplib/PhpAmqpLib/Wire/AMQPReader.php(106): PhpAmqpLib\Wire\AMQPReader->rawread(7)

2 /var/www/html/php-amqplib/PhpAmqpLib/Connection/AbstractConnection.php(508):

PhpAmqpLib\Wire\AMQPReader->read(7)

3 /var/www/html/php-amqplib/PhpAmqpLib/Connection/AbstractConnection.php(555):

PhpAmqpLib\Connection\AbstractConnection->wait_frame(0)

4 /var/www/html/php-amqplib/PhpAmqpLib/Channel/AbstractChannel.php(217):

PhpAmqpLib\Connection\AbstractConnection->wait_channel(0, 0)

5 /var/www/html/php-amqplib/PhpAmqpLib/Channel/AbstractChannel.php(328):

PhpAmqpLib\Channel\AbstractChannel->next_frame(0)

6 /var/www/html/php-amqplib/PhpAmqpLib/Connection/AbstractConnection.php(205):

PhpAmqpLib\Channel\AbstractChannel->w in /var/www/html/php-amqplib/PhpAmqpLib/Wire/IO/StreamIO.php on line 242

ответ

0

Я решил это, изменив значение сердцебиения от 0 до 60 секунд.

3

я обнаружил проблему (и решение), когда я выполнил команду:

  • php composer.phar install

и я получил эти ошибки:

Problem 1 
- php-amqplib/php-amqplib v2.6.3 requires ext-bcmath * -> the requested PHP extension bcmath is missing from your system. 

    Problem 2 
- php-amqplib/php-amqplib v2.6.3 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- Installation request for php-amqplib/php-amqplib v2.6.3 -> satisfiable by php-amqplib/php-amqplib[v2.6.3]. 

Моя проблема - отсутствующие расширения PHP (bcmath, mbstring) из моей системы - были решены просто их установка:

  • sudo apt-get install php-bcmath php-mbstring

Эти расширения были использованы некоторый код, вызываемый Кролика потребителем.