composer安裝php-amqplib

前言

原本是想RabbitMQ運行在ECS上,然後client運行在windows本地上的,後來在windows上安裝php-amqplib時,一直提示:
The “https://mirrors.aliyun,com/composer/packages.json” file could not be downloaded: php_network_getaddresses: get
addrinfo failed: 不知道這樣的主機。
所以只好在ECS上通過composer安裝好之後,再拉到本地windows上,但是問題又來了,安裝php-amqplib需要有bcmath這個拓展,windows的php自帶了,linux上的話需要自己安裝編譯,所以有了這篇博客記錄一下。

過程

bcmath.zip文件鏈接bcmath.zip

  • 下載完之後scpECS上並解壓
  • cd到剛剛解壓完的文件中,運行phpize命令,phpize命令在PHP安裝目錄的bin目錄下,例如/usr/local/php-5.6.36/bin/phpize
cd 	bcmath
phpize
  • 運行了phpize命令後,bcmath文件夾會多一些文件,這時執行如下命令
./configure #只有一個php版本時運行這個命令
./configure --with-php-config=/usr/local/php-5.6.36(填要用的php版本)/bin/php-config #擁有多個版本的php運行這個命令
  • 執行make && make install命令
  • 執行完之後會得到bcmath.so,位置要不是在bcmath中,要不就在bcmath/modules中,待會需要把它拷貝到php.ini中extension_dir配置的目錄中
  • 運行php -i | grep extension_dir,可以得到exetension_dir的目錄
extension_dir => /usr/lib64/php/modules => /usr/lib64/php/modules
sqlite3.extension_dir => no value => no value
  • 將剛剛的bcmath.so文件拷貝過去
mv bcmath.so /usr/lib64/php/modules
  • 修改php.ini配置文件,可以自己找找你的ini配置文件在哪,一般在/etc
vim /etc/php.ini

#在最後一行添加
extension=bcmath.so
  • 重啓php服務
systemctl restart php-fpm
  • echo phpinfo查看
    在這裏插入圖片描述

最後

通過composer require php-amqplib/php-amqplib可以正常下載,下載完之後scp到本地windows項目中

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章