php7.3.20以及常用拓展安装
2020-08-08 本文已影响0人
耗子_aca3
- 瞎几把装点依赖吧,要不要用的都给装上:
yum install -y gcc gcc-c++ libxml2-devel openssl-devel curl-devel libjpeg-devel libpng-devel libicu-devel freetype-devel openldap-devel openldap openldap-devel
- 创个www用户和www组吧(有就不要创啦)
groupadd www
useradd -g www www
- 先装个基础吧:
# 下载个包:[https://www.php.net/downloads](https://www.php.net/downloads),
cd /tmp # 纯属个人喜好,爱放哪儿放哪儿
wget https://www.php.net/distributions/php-7.3.20.tar.gz
tar -zxvf php-7.3.20.tar.gz
cd php-7.3.20/
./configure --prefix=/usr/local/php73 --with-config-file-path=/usr/local/php73/etc --with-config-file-scan-dir=/usr/local/php73/conf.d --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --enable-intl --enable-ftp --with-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --with-libzip --enable-soap --with-gettext --enable-fileinfo --enable-opcache --with-xsl --enable-sysvshm --enable-maintainer-zts
make && make install
# 安装基础到此结束,配置下呗
# 加个环境变量吧
vi /etc/profile
# 最后一句加上 这里加的作用是php-cli就可以全局用了,为所欲为!
export PATH=/usr/local/php73/bin:$PATH
# load 一把
source /etc/profile
# 把shell脚本拷贝过来用用
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm # 现在可以用的命令(/etc/init.d/php-fpm start(stop/restart))
/etc/init.d/php-fpm这个文件的几个参数需要注意下

- 装个amqp拓展(rabbitmq需要用到,装不装看自己心情吧)
# 装amqp之前先得装rabbitmq-c
cd /tmp
wget https://github.com/alanxz/rabbitmq-c/archive/v0.10.0.tar.gz
tar -zxvf v0.10.0.tar.gz
cd rabbitmq-c-0.10.0/
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/rabbitmq-c-0.10.0
cmake --build . --target install
# 一般情况下要执行这一句滴,不然amqp等会可能装了load不进来
cp -r /usr/local/rabbitmq-c-0.10.0/lib64/ /usr/local/rabbitmq-c-0.10.0/lib
# 现在装amqp了
cd /tmp
wget https://pecl.php.net/get/amqp-1.10.2.tgz
tar -zxvf amqp-1.10.2.tgz
cd amqp-1.10.2/
phpize
./configure --with-php-config=/usr/local/php73/bin/php-config --with-amqp --with-librabbitmq-dir=/usr/local/rabbitmq-c-0.10.0
make && make install
vi /usr/local/php73/conf.d/amqp.ini
# 加配置,引入amqp拓展
[amqp]
extension="amqp.so"
# php -m 看看吧第一个是amqp
- 装redis拓展
cd /tmp/
wget https://pecl.php.net/get/redis-5.3.1.tgz
tar -zxvf redis-5.3.1.tgz
cd redis-5.3.1/
phpize
./configure
make && make install
vi /usr/local/php73/conf.d/redis.ini
# 加配置
[redis]
extension = "redis.so"
- 装mongo拓展
wget https://pecl.php.net/get/mongodb-1.8.0.tgz
tar -zxvf mongodb-1.8.0.tgz
cd mongodb-1.8.0/
phpize
./configure
make && make install
vi /usr/local/php73/conf.d/mongodb.ini
# 加配置
[mongodb]
extension = "mongodb.so"
- 装zip拓展
# 也需要先装个libzip
wget https://libzip.org/download/libzip-1.7.3.tar.gz
tar -zxvf libzip-1.7.3.tar.gz
cd libzip-1.7.3/
mkdir build && cd build
cmake ..
cmake --build .
make && make install
# 开工zip
wget https://pecl.php.net/get/zip-1.19.0.tgz
tar -zxvf zip-1.19.0.tgz
cd zip-1.19.0/
phpize
./configure
make && make install
vi /usr/local/php73/conf.d/zip.ini
# 加配置
[zip]
extension = "zip.so"
# 小细节 (报错时候:PHP Warning: PHP Startup: Unable to load dynamic library 'zip.so' (tried: /usr/local/php73/lib/php/extensions/no-debug-zts-20180731/zip.so (libzip.so.5: cannot open shared object file: No such file or directory), /usr/local/php73/lib/php/extensions/no-debug-zts-20180731/zip.so.so (/usr/local/php73/lib/php/extensions/no-debug-zts-20180731/zip.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
) cp /usr/local/lib64/libzip.so.5 /usr/local/lib
- 最后,可以把opcache打开
vi /usr/local/php73/conf.d/opcache.ini
# 加配置
[opcache]
zend_extension="opcache.so"