首頁 >後端開發 >PHP問題 >linux下安裝php源碼詳細講解

linux下安裝php源碼詳細講解

王林
王林原創
2019-09-09 10:10:293633瀏覽

linux下安裝php源碼詳細講解

php原始碼的安裝有以下步驟:

#1、將下載的二進位套件移到/usr/local目錄,解壓縮檔案包

tar zxvf php-7.1.4.tar.gz

2、進入解壓縮的php資料夾下/usr/local/php-7.1.4,安裝依賴,編譯安裝

yum install  libxml2  libxml2-devel
./configure --prefix=/usr/local/php  --with-zlib --enable-zip --with-openssl --enable-fpm --enable-mbstring 
--with-libdir=lib64 --without-pear  --disable-phar
make
make test
make install

安裝完成後來的摘要資訊:

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/
Installing PHP CLI binary:        /usr/local/php/bin/
Installing PHP CLI man page:      /usr/local/php/php/man/man1/
Installing PHP FPM binary:        /usr/local/php/sbin/
Installing PHP FPM defconfig:     /usr/local/php/etc/
Installing PHP FPM man page:      /usr/local/php/php/man/man8/
Installing PHP FPM status page:   /usr/local/php/php/php/fpm/
Installing phpdbg binary:         /usr/local/php/bin/
Installing phpdbg man page:       /usr/local/php/php/man/man1/
Installing PHP CGI binary:        /usr/local/php/bin/
Installing PHP CGI man page:      /usr/local/php/php/man/man1/
Installing build environment:     /usr/local/php/lib/php/build/
Installing header files:          /usr/local/php/include/php/
Installing helper programs:       /usr/local/php/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PDO headers:           /usr/local/php/include/php/ext/pdo/

3、php配置

#php的配置文件为 php.ini
cp /usr/local/php-7.1.4/php.ini-production   /usr/local/php/lib/php.ini
#使得另一种方法来管理服务:
cp /usr/local/php-7.1.4/sapi/fpm/php-fpm /etc/init.d/php-fpm
#添加执行权限
chmod +x /etc/init.d/php-fpm
#php-fpm的配置文件
cp /usr/local/php/etc/php-fpm.conf.default   /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default   /usr/local/php/etc/php-fpm.d/www.conf

根據機器配置修改php-fpm進程數最大限制,這限制在/usr/local/php /etc/php-fpm.d/www.conf裡面

使用netstat -napo |grep "php-fpm" | wc -l 查看目前fastcgi進程個數,如果個數接近conf裡配置的上限,就需要調高進程數。

但也不能無止盡調高,可以依照伺服器記憶體狀況,可以把php-fpm子行程數調到100或以上,在4G記憶體的伺服器上200就可以。

pm.max_children = 200
pm.start_servers = 10
pm.min_spare_servers = 8
pm.max_spare_servers = 12

4、設定環境變數

vi /etc/profile

開啟後,在文件最下方加入以下設定:

export PATH=/usr/local/php/bin:$PATH

:wq!儲存退出,執行如下指令,讓變更生效

source /etc/profile

5、啟動php測試

#启动
/etc/init.d/php-fpm
#测试php
cd /usr/local/nginx/html
vi test.php

新增以下內容:

<?php  
 echo phpinfo();  
?>

##:wq!儲存退出。

瀏覽器輸入:

http://10.62.32.123/test.php

如果出現:PHP Version 7.1.4 介面,顯示php詳細的設定的介面,說明安裝正確。

6、php重新啟動、停止

php 7.1.4 原始碼中已經內嵌了

php-fpm,只需要在configure的時候新增編譯參數即可。

但是,php 7.1.4 下的php-fpm 不再支援php-fpm 先前具有的/usr/local/php/sbin/php-fpm (start|stop|reload)等指令,需要使用訊號控制:

master程式可以理解下列訊號:

SIGINT, SIGTERM 立即終止  

#SIGQUIT 平滑終止  

SIGUSR1 重新開啟日誌檔案  

SIGUSR2 平滑重載所有worker進程並重新載入設定與二進位模組

範例:  

php-fpm 關閉:  

kill -SIGINT `cat /usr/local/php/var/run/php-fpm.pid`

php-fpm 關閉

:  

kill -SIGUSR2 `cat /usr/local/php/var/run/php-fpm.pid`
php-fpm 重新啟動

:  

ps aux | grep -c php-fpm
netstat -anpo | grep "php-cgi" | wc -l
netstat -anop | grep "php-fpm" | wc -l
查看php-fpm進程數

rrreee###更多相關問題請造訪php中文網:###PHP影片教學########

以上是linux下安裝php源碼詳細講解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn