全部操做須要在root用戶下php
本機測試案例系統信息:centos7.3html
安裝路徑:/usr/local/phpmysql
先安裝以下依賴包sql
$ yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-serversvim
下載PHP7.2.0安裝包,點此下載 [密碼:pm0q]centos
解壓php-7.2.0.tar.gz 而後進入目錄,編譯。命令以下:api
$ tar -zxvf php-7.2.0.tar.gz服務器
$ cd php-7.2.0curl
$ ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-mbstring --enable-ftp --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pear --enable-sockets --with-freetype-dir=/usr --with-zlib --with-libxml-dir=/usr --with-xmlrpc --enable-zip --enable-fpm --enable-xml --enable-sockets --with-gd --with-zlib --with-iconv --enable-zip --with-freetype-dir=/usr/lib/ --enable-soap --enable-pcntl --enable-cli --with-curl
編譯完成的界面以下:
說明:因爲PHP7.2再也不支持mysql,而是用mysqli取代。所以會出現上面圖中所示的warning。不過不要緊,若是須要安裝php的mysql擴展,文章後面會有說明。
編譯完成以後,執行安裝命令:
$ make && make install
說明:若是是在阿里雲購買的雲服務器,安裝到這裏可能會出現以下錯誤:
解決方法:看這裏:
http://kccdzz.com/detail/13uat9xrd.html
安裝過程大約須要20分鐘時間,安裝成功的界面以下:
在以前編譯的源碼包中,找到 php.ini-production,複製到/usr/local/php下,並更名爲php.ini:
$ cp php.ini-production /usr/local/php/php.ini
[可選項] 設置讓PHP錯誤信息打印在頁面上
$ vim /usr/local/php/php.ini
1
|
display_errors = On
|
複製啓動腳本:
$ cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
$ chmod +x /etc/init.d/php-fpm
修改php-fpm配置文件:
$ cd /usr/local/php/etc
$ cp php-fpm.conf.default php-fpm.conf
$ vim php-fpm.conf
1
|
① 去掉 pid = run/php-fpm.pid 前面的分號
|
$ cd php-fpm.d
$ cp www.conf.default www.conf
$ vim www.conf
1
|
② 修改user和group的用戶爲當前用戶(也能夠不改,默認會添加nobody這個用戶和用戶組)
|
$ /etc/init.d/php-fpm start #php-fpm啓動命令
$ /etc/init.d/php-fpm stop #php-fpm中止命令
$ /etc/init.d/php-fpm restart #php-fpm重啓命令
$ ps -ef | grep php 或者 ps -A | grep -i php #查看是否已經成功啓動PHP