php5.6原始碼安裝及php-fpm配置與nginx整合
LNMP環境的搭建中,現在只有php沒有原始碼安裝過。這篇文章就把這個介紹下。
注意本篇文章使用的centos 6.5 64bit。
登陸centos下載php5.6的安裝包。php的軟體包可以去國內的souhu映象站點去下載。
wget http://mirrors.sohu.com/php/php-5.6.2.tar.gz
在安裝之前,我們需要安裝php5.6編譯時所依賴的軟體包。如下:
yum -y install gcc gcc-c++ libxml2 libxml2-devel
以上軟體包安裝完畢後,我們現在來解壓剛剛下載的php5.6原始碼包。使用如下命令:
tar -xf php-5.6.2.tar.gz
進入php5.6的解壓目錄,現在開始配置php5.6,使用如下命令:
cd php-5.6.2
./configure –enable-fpm –enable-mbstring –with-mysql=/usr/local/mysql
如果沒有錯誤的情況下,配置完畢後。系統會出現如下的提示資訊:
注意上述命令中–enable-fpm的作用是開啟php的fastcgi功能即開啟php-fpm功能,–with-mysql=/usr/local/mysql是啟用php支援mysql的功能,/usr/local/mysql是mysql資料庫的安裝路徑。
–enable-mbstring表示啟用mbstring模組mbstring模組的主要作用在於檢測和轉換編碼,提供對應的多位元組操作的字串函式。目前php內部的編碼只支援ISO-8859-*、EUC-JP、UTF-8,其他的編碼的語言是沒辦法在php程式上正確顯示的,所以我們要啟用mbstring模組。
同時我們也只是簡單的開啟和擴充套件php的一部分功能,其他需要的功能,請自行新增。
配置完畢後,我們現在來編譯php,使用make命令,如下:
make
php編譯的時間比較長,根據機器的效能不同需要等待10-20分鐘左右。編譯完畢後的截圖,如下:
編譯完畢後,我們現在開始安裝php,使用如下命令:
make install
安裝完畢後,我們可以通過php –v命令檢視是否安裝成功。如下:
php –v
通過這樣安裝完畢後,你會發現在/usr/local/lib目錄下沒有php.ini檔案。在這我們就先複製php安裝檔案提供的模版,如下:
cp php.ini-production /usr/local/lib/php.ini
注意php.ini檔案一般在/usr/local/lib/和/etc目錄下。有關php安裝完畢後,沒有php.ini檔案的,我們再另外一篇文章再介紹。
不要以為到這php的安裝就完畢了,LNMP環境中的nginx是不支援php的,需要通過fastcgi來處理有關php的請求。而php需要php-fpm這個元件來支援。
在php5.3.3以前的版本php-fpm是以一個補丁包的形式存在的,而php5.3.3以後的php-fpm只需要在安裝php-fpm開啟這個功能即可。這個也就是前邊,我們再配置php使用到的那個命令–enable-fpm。
php-fpm功能開啟後,我們還需要配置php-fpm。其實php-fpm的配置檔案在安裝php時,已經為我們提供了一個配置檔案的模版。該模版為/usr/local/etc/php-fpm.conf.default,如下:
more /usr/local/etc/php-fpm.conf.default
我們現在只需要複製一份該檔案,並重新命名為php-fpm.conf,如下:
cp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf
為了讓php-fpm已服務的形式啟動。我們需要複製php安裝目錄下/sapi/fpm/init.d.php-fpm檔案。如下:
cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
通過上圖,我們也可以很清楚的看到php-fpm檔案目前沒有執行許可權。賦予php-fpm執行許可權,並啟動php-fpm,如下:
chmod a+x /etc/init.d/php-fpm
/etc/init.d/php-fpm start
netstat -tunlp |grep 9000
通過上圖,我們可以很明顯的看到php-fpm已經正常啟動。
注意php-fpm預設監聽的是9000埠。
現在再來配置nginx,使其支援php,如下:
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
然後在nginx的網站根目錄下新建index.php檔案內容如下:
vi /usr/local/nginx/html/index.php
<?php phpinfo(); ?>
現在來啟動nginx,如下:
/usr/local/nginx/sbin/nginx
netstat -tunlp |grep 80
nginx啟動完畢後,現在來訪問網站,如下:
通過上圖,我們可以很明顯的看到。php目前已經安裝成功,並且也成功的支援mysql資料庫。同時也與nginx整合完畢。
至此。我們的php5.6的安裝到此結束。
相關文章
- php5.6原始碼安裝過程PHP原始碼
- nginx安裝及配置Nginx
- Mac 下 Nginx、MySQL、PHP-FPM 的安裝配置MacNginxMySqlPHP
- Nginx安裝與配置Nginx
- Nginx 安裝與配置Nginx
- Mac下Nginx、PHP、MySQL 和 PHP-fpm安裝配置MacNginxPHPMySql
- nginx原始碼安裝Nginx原始碼
- Nginx 原始碼安裝Nginx原始碼
- 原始碼安裝Nginx原始碼Nginx
- Nginx安裝及配置詳解Nginx
- docker原始碼安裝NginxDocker原始碼Nginx
- macbook 原始碼安裝 nginxMac原始碼Nginx
- Centos原始碼安裝NginxCentOS原始碼Nginx
- 【推薦 - 原始碼安裝】nginx - 安裝原始碼Nginx
- linux安裝nginx及配置(一)LinuxNginx
- WAS與IHS整合的安裝與配置
- 原始碼安裝Nginx和PHP原始碼NginxPHP
- PHP安裝及與apache整合PHPApache
- mac下安裝nginx及相關配置MacNginx
- RE|Nginx-安裝與配置(1)Nginx
- nginx 編譯安裝與配置使用Nginx編譯
- Docker nginx安裝與配置掛載DockerNginx
- nginx + PHP-fpm 配置示例NginxPHP
- PHP-FPM和nginx配置PHPNginx
- centos php-fpm nginx配置CentOSPHPNginx
- CentOS7原始碼安裝NginxCentOS原始碼Nginx
- CentOS 7 下安裝PHP環境並且配置Nginx支援php-fpm模組CentOSPHPNginx
- 第8天ORACLE安裝及NGINX整合PHP環境OracleNginxPHP
- nginx原始碼編譯安裝(詳解)Nginx原始碼編譯
- Centos安裝PHP7及配置php-fpm開機啟動CentOSPHP
- zabbix安裝—–nginx安裝和配置Nginx
- Nginx基本安裝配置Nginx
- Mysql for Linux安裝配置之—— 原始碼安裝MySqlLinux原始碼
- 基於nginx的nagios安裝與配置NginxiOS
- PHP5.6中php-fpm的配置、啟動、關閉和重啟PHP
- 詳解Linux下Nginx+Tomcat整合的安裝與配置的步驟LinuxNginxTomcat
- yum安裝與原始碼安裝比較原始碼
- 高流量站點NGINX與PHP-fpm配置最佳化NginxPHP