본문 바로가기

Server/PHP

[php] php-amqplib/php-amqplib composer Installation failed

반응형

rabbitMQ 를 php 서버에 달아서 테스트를 하려고 하는데 

1. Class 'PhpAmqpLib\Connection\AMQPStreamConnection' not found

오류가 발생한다. 왜 못 찾지? PhpAmqpLib 가 없으니까 못찾지. composer로 설치해주자

설치를 시도했는데

2. Installation failed, reverting ./composer.json and ./composer.lock to their original content.

오류가 발생한다

composer require php-amqplib/php-amqplib 명령어를 써도

composer.json 파일의 require 블록에 "php-amqplib/php-amqplib": ">=3.0" 를 직접 추가해서 써도 자꾸 뜬다. 대환장 파티다.

composer cache clear 를 해도 update 를 해도 해결이 안된다.

커멘드 문구를 유심히 살펴보는데 걍.. 나의 경우 sockets 익스텐션 (extension) 을 설정해 줬어야 했음.

php.ini 의 extension=sockets 주석 풀어주고 서버 다시시작 -> composer require 명령 재시도

깔끔하게 설치됨

command 창이 띄워주는 안내문구를 유심히 봅시다. 빨간색만 보지 말고.. Problem 1
    - php-amqplib/php-amqplib[dev-master, 3.0.0-rc1, ..., v3.0.0] require ext-sockets * -> it is missing from your system. Install or enable PHP's sockets extension.
    - php-amqplib/php-amqplib 3.0.x-dev is an alias of php-amqplib/php-amqplib dev-master and thus requires it to be installed too.
    - Root composer.json requires php-amqplib/php-amqplib ^3.0 -> satisfiable by php-amqplib/php-amqplib[3.0.0-rc1, v3.0.0-rc2, v3.0.0, 3.0.x-dev (alias of dev-master)].

To enable extensions, verify that they are enabled in your .ini files:
    - C:\APM_Setup\Server\PHP7\php.ini
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

>> Install or enable PHP's sockets extension.<<

다 말해주고 있었음 ㅎ..

 

+ 그래서 성공적으로 rabbitMQ 설치 하고 퍼블리싱이 되냐 하면 

Error Connecting to server(10060)

를 바라보는 중이다. 일단 라이브러리는 불러왔고 exception 에 막히는거니까 좀 더 굴려봐야겠다.가뜩이나 머리가 안 굴러 가는데 당떨어져서 더 안돌아감. 살려줘~

반응형