CentOS 7 編譯安裝 PHP 7

導語

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

安裝編譯工具、依賴包

輸入 yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel mhash gd gd-devel 進行安裝,能夠根據本身的實際狀況進行調整。html

下載及解壓安裝包

接着是下載安裝包,根據本身的需求進行選擇。下載完成後進行解壓mysql

下載及解壓

配置及編譯

能夠使用 ./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-socketsnginx

配置 PHP

接下來是 make && make installsql

編譯完成

一個插曲,錯誤信息是 virtual memory exhausted: Cannot allocate memorysegmentfault

增長虛擬內存
一、dd if=/dev/zero of=/swap bs=1024 count=204800 二、mkswap /swap 三、swapon /swap free查看,swap再也不爲0 編譯完成後能夠swapoff /swap
解決方法來自 這裏

建立配置文件

  1. 建立配置文件,並將其複製到正確位置,分別執行

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.confcentos

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

添加進系統服務

以前介紹過添加系統服務和開機啓動,這裏不作過多介紹。在 /usr/lib/systemd/system 目錄中添加 php-fpm.service 文件,內容以下php7

[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 設置開機啓動。curl

修改 Nginx 配置

最後一步就是修改 Nginx 的配置文件socket

修改 Nginx 配置文件
修改 Nginx 配置文件

phpinfo


參考資料:Unix 系統下的 Nginx 1.4.xCentOS 7 編譯安裝PHP 7.0.2 PHP編譯參數configure配置詳解(持續更新中)Centos 7源碼編譯安裝 php7.2 之生產篇

相關文章
相關標籤/搜索