首頁  >  文章  >  後端開發  >  CentOS7編譯安裝PHP7的詳細教學(圖文)

CentOS7編譯安裝PHP7的詳細教學(圖文)

不言
不言轉載
2019-03-02 13:24:203039瀏覽

這篇文章帶給大家的內容是關於CentOS7編譯安裝PHP7的詳細教學(圖文),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

使用編譯的方式來安裝 PHP 7。

安裝編譯工具、依賴套件

輸入 yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcpt -devel mhash gd gd-devel 進行安裝,可依自己的實際情況進行調整。

下載及解壓縮安裝包

接著是下載安裝包,依照自己的需求進行選擇。下載完成後進行解壓縮

CentOS7編譯安裝PHP7的詳細教學(圖文)

設定及編譯

可以使用 ./configure --help 檢視都有哪些設定選項,也可以檢視下方參考資料中的文章。選擇解壓縮後的目錄`/usr/local/src/php-7.2.12
`, 修改幾個設定做範例,如下
./configure --prefix=/usr/local/php  --enable -ftp --enable-zip --enable-fpm --with-pdo-mysql --with-jpeg-dir --with-png-dir --with-gd --with-curl --enable-mbstring -- enable-bcmath --enable-sockets

CentOS7編譯安裝PHP7的詳細教學(圖文)

接下來是make && make install

CentOS7編譯安裝PHP7的詳細教學(圖文)

一個插曲,錯誤訊息是 virtual memory exhausted: Cannot allocate memory。

增加虛擬記憶體
1、dd if=/dev/zero of=/swap bs=1024 count=204800 2、mkswap /swap 3、swapon /swap free查看,swap不再為0 編譯完成後可以swapoff /swap
解決方法來自這裡。

建立設定檔

建立設定文件,並將其複製到正確位置,分別執行

cp php.ini-development /usr/local/php/etc/ php.ini
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

修改 /usr/local/php/ext/php-fpm. conf 中 pid 的內容,pid=/usr/local/php/var/run/php-fpm.pid

新增進系統服務

#之前介紹過添加系統服務和開機啟動,這裡不做太多介紹。在 /usr/lib/systemd/system 目錄中新增 php-fpm.service 文件,內容如下

[Unit]
Description=The PHP FastCGI Process Manager
After=syslog.target network.target

[Service]
Type=simple
PIDFile=/usr/local/php/var/run/php-fpm.pid
ExecStart=/usr/local/php/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID

[Install]
WantedBy=multi-user.target

新增完成,可以使用 systemctl daemon-reload 更新下,然後輸入 systemctl start php-fpm 即可開啟服務。最後是新增開機啟動,輸入 systemctl enable php-fpm 設定開機啟動。

修改Nginx 設定

最後一步就是修改Nginx 的設定檔

CentOS7編譯安裝PHP7的詳細教學(圖文)

CentOS7編譯安裝PHP7的詳細教學(圖文)

CentOS7編譯安裝PHP7的詳細教學(圖文)

#

以上是CentOS7編譯安裝PHP7的詳細教學(圖文)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:segmentfault.com。如有侵權,請聯絡admin@php.cn刪除