国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 服務(wù)器 > Web服務(wù)器 > 正文

CentOS 7下部署php7.1和開啟MySQL擴(kuò)展的方法教程

2024-09-01 13:52:19
字體:
供稿:網(wǎng)友

前言

之前在CentOS7安裝php/232903.html">php/40267.html">php7.1的時(shí)候有遇到PHP源及PHP7.1不支持MySQL擴(kuò)展問題,上午抽空安裝了下終于解決了這兩個(gè)問題,特此記錄備忘。

簡(jiǎn)單安裝(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實(shí)用程序

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

更新系統(tǒng)當(dāng)前軟件版本

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

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

安裝PHP

以上準(zhǔn)備工作完成后,就可以安裝所需的PHP版本了。

對(duì)于PHP5.4

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

安裝前可嘗試yum search php54搜索可安裝的軟件包。

對(duì)于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搜索可安裝的軟件包。

對(duì)于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常用擴(kuò)展:

[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

對(duì)于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并啟動(dòng)用以測(cè)試phpinfo頁(yè)面,這時(shí)候應(yīng)該能正常顯示。

源碼編譯安裝

安裝前的準(zhǔn)備

下載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官方安裝說明文檔:http://php.net/manual/zh/install.unix.nginx.php

編譯安裝

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

配置環(huán)境變量:

在/etc/profile末尾追加export PATH=$PATH:/usr/local/php/bin,然后執(zhí)行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來啟動(dòng)php-fpm了。不過為了以后管理方便,通常需要將配置文件統(tǒng)一放到/etc目錄下,并將php-fpm.server添加至systemctl服務(wù)。如下:

[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文件使其執(zhí)行正確的路徑,如下:

[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

啟動(dòng)php-fpm

第一次通過systemctl啟動(dòng)PHP服務(wù)時(shí)需要先將php-fpm服務(wù)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

詳見這篇文章,并根據(jù)需要配置并啟動(dòng)Nginx。這里就不在寫了。

開啟MySQL擴(kuò)展(僅編譯安裝)

由于PHP7已經(jīng)完全移除了MySQL的擴(kuò)展支持(由mysqli與mysqlnd取代),因此一些老的軟件在升級(jí)PHP版本后會(huì)報(bào)類似mysql_connect()函數(shù)未定義的錯(cuò)誤,一般建議使用新的PHPmysqli或者pdo擴(kuò)展進(jìn)行替換。當(dāng)然也可以檢出遺留版本的支持MySQL擴(kuò)展的PHP7代碼自行編譯安裝了,不過需要注意的就是MySQL擴(kuò)展可是完全沒有后續(xù)更新的了。

安裝前準(zhǔn)備

查看當(dāng)前擴(kuò)展
查看當(dāng)前PHP7.1自帶擴(kuò)展:

[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擴(kuò)展確實(shí)已經(jīng)被移除了,我們可以直接在ext目錄下檢出老的PHP MySQL擴(kuò)展代碼。

獲取PHP MySQL擴(kuò)展源碼

[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擴(kuò)展

使用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

安裝完成后需確認(rèn)MySQL擴(kuò)展安裝是否正確。

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

extension = "mysql.so"

重新啟動(dòng)php-fpm服務(wù)就能在phpinfo里看到MySQL擴(kuò)展了:

centos7,php,mysql,centos,mysql擴(kuò)展

--本配置完。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對(duì)VEVB武林網(wǎng)的支持。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 吴桥县| 桃园县| 晋宁县| 桃源县| 木里| 泗阳县| 酒泉市| 潜江市| 淅川县| 渭南市| 丰城市| 清新县| 改则县| 兴城市| 财经| 绿春县| 烟台市| 吴川市| 荥阳市| 宁明县| 淄博市| 饶阳县| 绥中县| 芜湖县| 甘泉县| 泸西县| 丹巴县| 温宿县| 建德市| 阳城县| 苗栗市| 马山县| 公主岭市| 武功县| 兴业县| 西充县| 顺平县| 晋城| 顺平县| 杂多县| 禹城市|