php7編譯安裝

2021-08-10 06:42:43 字數 1445 閱讀 7279

因為編譯安裝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 ...