PHP5.6的安装及redis、memcache、mongo扩展

系统版本:

CentOS Linux release 7.4.1708 (Core)

PHP5.6下载地址:

wget http://am1.php.net/distributions/php-5.6.37.tar.gz

需要装好yum的epel-release,这上面有相对应的依赖包,否则依赖包没装好编译会报错!!!

安装相关依赖关系包

yum -y install gcc gcc-c++ php php-mysq bzip2-devel libxml2-devel openssl-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel openldap-deve php-mcrypt libmcrypt libmcrypt-devel freetype-devel mysl mysql-devel

创建用户、用户组

groupadd www
useradd -g www -s /sbin/nologin -M www
-s表示指定用户所用的shell,此处为/sbin/nologin,表示不登录。
-M表示不创建用户主目录。
-g表示指定用户的组名为www

解压php5.6包,并把包改名拷贝到/usr/local/php

tar -zxvf php-5.6.37.tar.gz
cp –r php-5.6.37 /usr/local/php

接下来就是编译安装了,cd到/usr/local/php

./configure --prefix=/usr/local/php --with-pdo-mysql --with-mysqli=mysqlnd --with-mysql=mysqlnd --with-mysql-sock=/usr/local/mysql/mysql.sock --without-pdo-sqlite --with-gd --with-bz2 --enable-bcmath --enable-soap --with-openssl --enable-opcache --with-zlib --enable-zip --with-mhash --enable-exif --enable-mbstring --with-iconv --with-mcrypt --with-curl --with-freetype-dir --with-jpeg-dir --with-png-dir --enable-fpm --enable-pcntl --with-fpm-user=www --with-fpm-group=www --with-config-file-path=/usr/local/php/etc --with-gettext

make&&make install

因为在./configure上面php.ini这个文件我是指向/usr/local/php/etc下面,所以还需要拷贝

cp /etc/php.ini /usr/local/php/etc/

添加环境变量

echo export PATH=$PATH:/usr/local/php/bin >> /etc/profile
source /etc/profile

查看安装版本

/usr/local/php/bin/php -v
PHP 5.6.37 (cli) (built: Mar 29 2019 10:00:17)
Copyright © 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright © 1998-2016 Zend Technologies

再拷贝一下这三个文件

cp /usr/local/php/php.ini-production /usr/local/lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

给php-fpm添加权限

chmod +x /etc/init.d/php-fpm

修改配置文件,把刚才的用户跟用户组进行修改

vim /usr/local/php/etc/php-fpm.conf
user = www
group = www

启动php

/etc/init.d/php-fpm status
ss -tunlp | grep 9000

php-mongo
首先安装mongodb

tar -xf mongodb-linux-x86_64-rhel70-3.6.3.tgz
mkdir /usr/local/mongodb
cd /usr/local/mongodb/
cp -r mongodb-linux-x86_64-rhel70-3.6.3/bin/ /usr/local/mongodb/
mkdir etc
mkdir log
mkdir -p data/db

配置文件按下面的添加(如需限定IP访问可另行更改bind_ip):

[root@lingshou1 ~]# cat /usr/local/mongodb/etc/mongodb.conf
dbpath=/usr/local/mongodb/data/db/
logpath=/usr/local/mongodb/log/mongodb.log
logappend=true
fork=true
bind_ip=0.0.0.0
port=27017

设置PATH变量

echo “export PATH=/usr/local/mongodb/bin:$PATH” >> /etc/profile
source /etc/profile

启动服务

mongod -f /usr/local/mongodb/etc/mongodb.conf
netstat -antup | grep mongod

连接服务

mongo

mongo扩展
下载地址

wget http://pecl.php.net/get/mongo-1.6.13.tgz
tar zxvf mongo-1.6.13.tgz
cd mongo-1.6.13

安装这个包才能使用phpize

yum -y install autoconf

使用PHP的phpize在目录下生成configure文件,phpize会调用当前目录里的config.m4生成configure文件:

/usr/local/php/bin/phpize

指向php的php-config路径

./configure --with-php-config=/usr/local/php/bin/php-config
make
make instal

查看有没有生成mongo.so文件

ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
mongo.so

修改php.ini,上面也说了编译时php.ini我是指向了/usr/local/php/etc/,所以在/usr/local/php/etc/php.ini找到

vim /usr/local/php/etc/php.ini
extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/”
extension = “mongo.so”

重新启动php

/etc/init.d/php-fpm restart
[root@gpmaster ~]#/usr/local/php/bin/php -m | grep mongo
mongo

php-memcache
先安装memcached

yum -y isntall memcached
systemctl start memcached
systemctl enable memcached

然后是扩展
包的位置

wget http://pecl.php.net/get/memcache-2.2.7.tgz
tar zxvf memcache-2.2.7.tgz
cd memcache-2.2.7

安装这个包才能使用phpize

yum -y install autoconf

使用PHP的phpize在目录下生成configure文件,phpize会调用当前目录里的config.m4生成configure文件:

/usr/local/php/bin/phpize

指向php的php-config路径

./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config
make && make install

修改添加配置文件

vim /usr/local/php/etc/php.ini
extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/”
extension = “memcache.so”

重新启动php

/etc/init.d/php-fpm restart
[root@gpmaster ~]#/usr/local/php/bin/php -m | grep memcache
memcache

redis扩展
包的地址

wget http://pecl.php.net/get/redis-3.1.1.tgz

步骤看上面两个案例,一样的

修改添加配置文件

vim /usr/local/php/etc/php.ini
extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/”
extension = “redis.so”

重启服务

/etc/init.d/php-fpm restart
/usr/local/php/bin/php -m | grep memcache

暂时先这样吧,目前安装问题没有遇到多少,注意路径文件名就可以了。
各位看官要是有什么建议意见可以在下面留言!

记一个php5.3安装连接Oracle的扩展
https://www.cnblogs.com/dinglinyong/p/9225499.html
————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_44466805/article/details/88892322

posted @ 2024-01-31 16:30  zda龙  阅读(29)  评论(0编辑  收藏  举报