因為編譯安裝php前,它所依賴的各種庫和包可能還未被安裝,所以先yum安裝php中常用的必須庫:
yum install 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
然後開始安裝:
這個時候可能會提示libmcrypt 庫或者其他庫沒有,看來剛才yum安裝依賴庫的時候沒安裝成功,於是再yum執行上面命令,從提示資訊發現還是沒成功,那應該是yum源的確沒有有些庫,那怎麼辦? 更新yum源唄:
yum install epel-release
yum update
然後再yum -y install 相應庫
成功後繼續./configure php7 ,如果沒有問題後就make && make install
經過長時間編譯後,安裝成功後開始配置:
vim /etc/profile
chkconfig --add php-fpm
chkconfig php-fpm on
啟動php:
/etc/init.d/php-fpm start
php-fpm服務跑起來了,但是php-fpm走的是127.0.0.1:9000,外網是無法訪問的,而且我們也不可能直接通過php-fpm給外網提供服務,所以用nginx去**9000埠執行php。
接下來對nginx進行配置即可,fpm已經在後台執行了,我們需要在nginx的配置檔案中增加**的規則,即可讓使用者在訪問80埠,請求php的時候,交由後端的fpm去執行,並返回結果。
$ vi ./conf/nginx.conf
#location ~ \.php$
把前面的#注釋符號去掉,把script改為$document_root最終如下:
location ~ \.php$
這樣就ok了,重新載入nginx配置即可
./nginx -s reload
然後再web根目錄下寫乙個index.php:
<?php
phpinfo();
>
這個時候執行index.php看看:
一切ok
這個時候看到執行時headers中看到了
x-powered-by:
php/7.1.5 資訊,為了安全,可以將其關閉:
vim /etc/php.ini
找到:expose_php = on
修改為:
expose_php = off
重啟 php-fpm服務;
然後再次執行並檢視;
編譯安裝php7
解壓安裝 tar zxvf php 7.0.2.tar.gz cd php 7.0.2 首先檢視安裝幫助 configure help configure prefix usr local php with curl with freetype dir with gd with gettext wi...
centos編譯安裝PHP7
在php.net中找到最新穩定版php原始碼 這裡我選擇了最新版php 7.1.9 wget php.tar gz net get php 7.1 9.tar gz from this mirror tar xzvf php.tar gzcd php 2 配置php 解壓了php原始碼之後,我們需要...
centos編譯安裝php7
yum y install openssl openssl devel curl curl devel libjpeg libjpeg devel libpng libpng devel freetype freetype devel pcre pcre devel libxslt libxslt ...