千家信息网

CentOS7下怎么部署php7.1和开启MySQL扩展

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要介绍"CentOS7下怎么部署php7.1和开启MySQL扩展",在日常操作中,相信很多人在CentOS7下怎么部署php7.1和开启MySQL扩展问题上存在疑惑,小编查阅了各式资料,整理
千家信息网最后更新 2026年11月03日CentOS7下怎么部署php7.1和开启MySQL扩展

这篇文章主要介绍"CentOS7下怎么部署php7.1和开启MySQL扩展",在日常操作中,相信很多人在CentOS7下怎么部署php7.1和开启MySQL扩展问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"CentOS7下怎么部署php7.1和开启MySQL扩展"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

简单安装(yum方式)

安装软件源

添加epel源

[root@opstrip.com opt]# rpm --import /etc/pki/rpm-gpg/rpm-gpg-key*[root@opstrip.com opt]# rpm -uvh http://mirrors.rit.edu/fedora/epel//7/x86_64/e/epel-release-7-9.noarch.rpm

添加remi源

[root@opstrip.com opt]# rpm -uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm

安装并更新软件

安装yum-config-manager实用程序

[root@opstrip.com opt]# yum -y install yum-utils

更新系统当前软件版本

[root@opstrip.com opt]# yum -y update

更新完成后,就可以安装所需要的php版本了。

安装php

以上准备工作完成后,就可以安装所需的php版本了。

对于php5.4

[root@opstrip.com opt]# yum -y install php

安装前可尝试yum search php54搜索可安装的软件包。

对于php7.0

[root@opstrip.com opt]# yum-config-manager --enable remi-php70[root@opstrip.com opt]# yum -y install php php-opcache

安装前可尝试yum search php70搜索可安装的软件包。

对于php7.1

[root@opstrip.com opt]# yum-config-manager --enable remi-php71[root@opstrip.com opt]# yum -y install php php-opcache

安装前可尝试yum search php71搜索可安装的软件包。

完成后还需要添加php常用扩展:

[root@opstrip.com opt]# yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel

对于nginx

[root@opstrip.com opt]# yum -y install nginx nginx-mod-http-perl nginx-mod-stream nginx-filesystem nginx-mod-mail nginx-mod-http-image-filter nginx-all-modules nginx-mod-http-geoip nginx-mod-http-xslt-filter

安装前仍建议尝试yum search nginx搜索可安装的软件包。

安装完成后配置php及nginx并启动用以测试phpinfo页面,这时候应该能正常显示。

源码编译安装

安装前的准备

下载php安装包

[root@opstrip.com opt]# wget -o php-7.1.5.tar.gz http://cn2.php.net/distributions/php-7.1.5.tar.gz

解压

[root@opstrip.com opt]# tar xf php-7.1.5.tar.gz

安装依赖包

[root@opstrip.com php-7.1.5]# yum install -y libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel

配置安装

编译配置

[root@opstrip.com opt]# cd php-7.1.5[root@opstrip.com php-7.1.5]# ./configure \--prefix=/usr/local/php \--with-config-file-path=/etc \--enable-fpm \--with-fpm-user=nginx \--with-fpm-group=nginx \--enable-inline-optimization \--disable-debug \--disable-rpath \--enable-shared \--enable-soap \--with-libxml-dir \--with-xmlrpc \--with-openssl \--with-mcrypt \--with-mhash \--with-pcre-regex \--with-sqlite3 \--with-zlib \--enable-bcmath \--with-iconv \--with-bz2 \--enable-calendar \--with-curl \--with-cdb \--enable-dom \--enable-exif \--enable-fileinfo \--enable-filter \--with-pcre-dir \--enable-ftp \--with-gd \--with-openssl-dir \--with-jpeg-dir \--with-png-dir \--with-zlib-dir \--with-freetype-dir \--enable-gd-native-ttf \--enable-gd-jis-conv \--with-gettext \--with-gmp \--with-mhash \--enable-json \--enable-mbstring \--enable-mbregex \--enable-mbregex-backtrack \--with-libmbfl \--with-onig \--enable-pdo \--with-mysqli=mysqlnd \--with-pdo-mysql=mysqlnd \--with-zlib-dir \--with-pdo-sqlite \--with-readline \--enable-session \--enable-shmop \--enable-simplexml \--enable-sockets \--enable-sysvmsg \--enable-sysvsem \--enable-sysvshm \--enable-wddx \--with-libxml-dir \--with-xsl \--enable-zip \--enable-mysqlnd-compression-support \--with-pear \--enable-opcache

具体可以参考php官方安装说明文档:

编译安装

[root@opstrip.com php-7.1.5]# make && make install

配置环境变量:

在/etc/profile末尾追加export path=$path:/usr/local/php/bin,然后执行source /etc/profile生效后查看php版本:

[root@opstrip.com php-7.1.5]# php -vphp 7.1.5 (cli) (built: may 31 2017 16:12:38) ( nts )copyright (c) 1997-2017 the php groupzend engine v3.1.0, copyright (c) 1998-2017 zend technologies

安装后的配置

配置php-fpm

安装完成后可以通过sapi/fpm/php-fpm.server来启动php-fpm了。不过为了以后管理方便,通常需要将配置文件统一放到/etc目录下,并将php-fpm.server添加至systemctl服务。如下:

[root@opstrip.com php-7.1.5]# mkdir -p /etc/php-fpm.d[root@opstrip.com php-7.1.5]# cp php.ini-production /etc/php.ini[root@opstrip.com php-7.1.5]# cp sapi/fpm/php-fpm.service /usr/lib/systemd/system/[root@opstrip.com php-7.1.5]# cp sapi/fpm/www.conf /etc/php-fpm.d/

然后更改/usr/lib/systemd/system/php-fpm.service文件使其执行正确的路径,如下:

[root@opstrip.com php-7.1.5]# vi /usr/lib/systemd/system/php-fpm.service# it's not recommended to modify this file in-place, because it# will be overwritten during upgrades. if you want to customize,# the best way is to use the "systemctl edit" command. [unit]description=the php fastcgi process managerafter=network.target [service]type=simplepidfile=/var/run/php-fpm.pidexecstart=/usr/local/php/sbin/php-fpm --nodaemonize --fpm-config /etc/php-fpm.confexecreload=/bin/kill -usr2 $mainpidprivatetmp=true [install]wantedby=multi-user.target

启动php-fpm

第一次通过systemctl启动php服务时需要先将php-fpm服务enable:

[root@opstrip.com php-7.1.5]# systemctl enable php-fpm.service[root@opstrip.com php-7.1.5]# systemctl start php-fpm.service

编译安装nginx

详见,并根据需要配置并启动nginx。这里就不在写了。

开启mysql扩展(仅编译安装)

由于php7已经完全移除了mysql的扩展支持(由mysqli与mysqlnd取代),因此一些老的软件在升级php版本后会报类似mysql_connect()函数未定义的错误,一般建议使用新的phpmysqli或者pdo扩展进行替换。当然也可以检出遗留版本的支持mysql扩展的php7代码自行编译安装了,不过需要注意的就是mysql扩展可是完全没有后续更新的了。

安装前准备

查看当前扩展
查看当前php7.1自带扩展:

[root@opstrip.com php-7.1.5]# ls extbcmath  dom     gd   json  oci8   pdo_firebird posix   skeleton sysvsem  xmlwriterbz2   enchant    gettext  ldap  odbc   pdo_mysql  pspell  snmp  sysvshm  xslcalendar  exif    gmp   libxml  opcache  pdo_oci   readline  soap  tidy   zipcom_dotnet ext_skel   hash   mbstring openssl  pdo_odbc  recode  sockets  tokenizer zlibctype   ext_skel_win32.php iconv  mcrypt  pcntl  pdo_pgsql  reflection spl   wddxcurl   fileinfo   imap   mysql  pcre   pdo_sqlite  session  sqlite3  xmldate   filter    interbase mysqli  pdo   pgsql   shmop   standard xmlreaderdba   ftp     intl   mysqlnd  pdo_dblib phar   simplexml  sysvmsg  xmlrpc

可以看到mysql扩展确实已经被移除了,我们可以直接在ext目录下检出老的php mysql扩展代码。

获取php mysql扩展源码

[root@opstrip.com ext]# git clone https://github.com/php/pecl-database-mysql mysql --recursivecloning into 'mysql'...remote: counting objects: 145, done.remote: total 145 (delta 0), reused 0 (delta 0), pack-reused 145receiving objects: 100% (145/145), 88.41 kib | 0 bytes/s, done.resolving deltas: 100% (65/65), done.checking connectivity... done.

编译安装mysql扩展

使用phpize编译

[root@opstrip.com ext]# cd mysql[root@opstrip.com mysql]# lsconfig.m4 config.w32 credits license mysql.mak mysql_mysqlnd.h package.xml php_mysql.c php_mysql.h php_mysql_structs.h readme.md tests[root@opstrip.com mysql]# /usr/local/php/bin/phpizeconfiguring for:php api version:   20151012zend module api no:  20151012zend extension api no: 320151012[root@opstrip.com mysql]# ./configure --with-php-config=/usr/local/php/bin/php-config

安装

[root@opstrip.com mysql]# make && make install[root@opstrip.com mysql]# ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/mysql.so opcache.a opcache.so

安装完成后需确认mysql扩展安装是否正确。

最后修改php.ini配置文件,增加一行:

extension = "mysql.so"

重新启动php-fpm服务就能在phpinfo里看到mysql扩展了:

到此,关于"CentOS7下怎么部署php7.1和开启MySQL扩展"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

配置 软件 编译 版本 软件包 学习 尝试 搜索 更新 服务 文件 准备 实用 代码 建议 更多 源码 目录 帮助 支持 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技公司排名 广州大一互联网络科技有限公司 深圳恒合互联网络科技有限公司 工业互联网科技新基建 美国互联网科技巨头监管 汇久创客互联网科技 互联网科技博客 山东吉时兔互联网科技有限公司 济南华为互联网科技产业总部基地 银川新华互联网科技职业技术培训学校图片 中国航天科技大学国际工业互联网 互联网公司黑科技创始人 长沙茂晟互联网科技有限公司 科技赋能视角下互联网保险发展 互联网方面的科技前沿 广州燕处互联网科技有限公司 扫呗互联网科技有限公司 互联网科技收购价值 互联网科技品牌 山东蛋芒互联网科技有限公司 互联网核心科技是什么 青岛互联网科技公司 齐家互联网科技 左右互联网络科技 联恩商钥互联网科技有限公司 成都铂石互联网科技做什么的 区块链结合互联网科技 黑科技 体验场景 互联网大会 陕西九四连强互联网科技有限公司 优雇互联网科技有限公司
0