PHP环境处理记录之插件安装

服务器环境部署 出现了一些缺插件的情况,php的版本是5.4的版本 稍微有些老,把安装过程记录一下。这里总结的过程中可以把相关插件区分为需要编译和不需要编译的版本

在这里插入图片描述

安装php-xml插件(无需编译)

尝试使用yum install php-xml但是提示已安装的php-common版本和需要的版本不一致。正常情况下yum install 即可解决问题,这里因为我这里的服务器版本等其他原因导致

PHP环境处理记录之插件安装_第1张图片

解决办法:对于一些不需要编译的插件直接通过rpm安装,例如提示需要php-xml-5.4.16-48.el7.x86_64的版本那么对应的下载的地址为:

http://rpmfind.net/linux/RPM/centos/7.8.2003/x86_64/Packages/php-xml-5.4.16-48.el7.x86_64.html

rpm -ivh --nodeps php-xml-5.4.16-48.el7.x86_64.rpm

通过此类方式我们可以安装如下:
在这里插入图片描述
安装完成后通过php -m 查看是否已安装
PHP环境处理记录之插件安装_第2张图片

安装mcrypt扩展(需要编译)

这一类主要是针对需要编译并且连接的一类扩展可以参考这个方式

  • 下载当前环境的php源码
    wget http://au1.php.net/distributions/php-5.4.45.tar.bz2
    tar jxf php-5.4.44.tar.bz2
  • 确认你的linux没有安装mcrypt库,如果没有安装的话通过yum安装
    (也可以去http://www.sourceforge.net下载Libmcrypt,mhash,mcrypt安装包编译安装 )

yum list installed|grep mcrypt(检查是否安装mcrypt库)

在这里插入图片描述

yum install libmcrypt libmcrypt-devel mcrypt mhash(快速安装几个相关联的库)

  • 安装php的mcrypt扩展(动态加载编译)

    1.cd php-5.4.45/ext/mcrypt/(进入第一步我们下载的源码目录)

    2.whereis phpize (查看本机phpize执行文件地址一般在/usr/bin/phpize)

    3.执行/usr/bin/phpize

    4.whereis php-config(默认在/usr/bin/php-config)

    5.执行./configure --with-php-config=/usr/bin/php-config

    6.make && make install(执行编译mcrypt)安装完成后会提示生成的so文件的目录Installing shared extensions: /usr/lib64/php/modules/

    7.安装完成给你的php.ini添加一条extension=mcrypt.so
    cd /etc/php.d 创建一个mrcypt.ini文件就行,里面写extension=mcrypt.so
    echo ‘extension=mcrypt.so’ > mcrypt.ini

    同样我们可以通过php -m查看是否已经安装并挂载然后重启php-fpm 及nginx即可

重启php-fpm

每个插件安装成功以后都要重启 php-fpm进程,主要就是master process进程如下图

ps aux|grep php-fpm

PHP环境处理记录之插件安装_第3张图片

  • 重启方案1:

kill -USR2 25930 (对于没有生成pid的方式)

  • 重启方案2:
    上面方案一般是没有生成php-fpm.pid文件时使用,如果要生成php-fpm.pid,使用下面这种方案:

    上面master进程可以看到,matster使用的是/etc/php-fpm.conf这个配置文件,cat /usr/local/php/etc/php-fpm.conf 发现:

    ; Pid file
    ; Note: the default prefix is /usr/local/php/var
    ; Default Value: none
    ;pid = run/php-fpm.pid
    

    php-fpm 关闭
    kill -INT ‘cat /usr/local/php/var/run/php-fpm.pid’
    php-fpm 重启
    kill -USR2 ‘cat /usr/local/php/var/run/php-fpm.pid’

  • 重启方案3

    kill - 9 25930 关闭master进程
    /usr/sbin/php-fpm 重启执行fpm启动

你可能感兴趣的:(#,研发管理)