當前位置:才華齋>計算機>php語言>

如何啟用Apache的PHP-FPM多例項

php語言 閱讀(1.79W)

PHP-FPM 作為 FastCGI 程序管理器而廣為熟知,它是 PHP FastCGI 實現的改進,帶有更為有用的功能,用於處理高負載的服務器和網站。下面就一起來學習學習,更多內容請關注應屆畢業生網!

如何啟用Apache的PHP-FPM多例項

  新功能

擁有具有優雅(graceful)啟動/停止選項的高階程序管理能力。

可以通過不同的使用者身份/組身份來以監聽多個埠以及使用多個PHP配置。

錯誤日誌記錄。

支援上傳加速。

特別用於在處理一些耗時任務時結束請求和清空所有資料的功能。

同時支援動態和靜態的子程序重生。

支援IP地址限制。

在本文中,我將要討論的是,在執行 CPanel 11.52 及 EA3 (EasyApache)的 CentOS 7 伺服器上,於 Nginx 和 Apache 之上安裝 PHP-FPM,以及如何來通過 CPanel 管理這些安裝好的多個 PHP-FPM 例項。

在我們開始安裝前, 先看看安裝的`先決條件。

  先決條件

啟用 Modproxyfcgi 模組

啟用 MPM_Event

由於我們要將 PHP-FPM 安裝到一臺 EA3 伺服器,我們需要執行 EasyApache 來編譯 Apache 以啟用這些模組。

你們可以參考我以前寫的,關於如何在 Apache 伺服器上安裝 Nginx 作為反向代理的文件來了解 Nginx 的安裝。

步驟 1:安裝 Epel 倉庫

步驟 2:安裝 nDeploy RPM 倉庫,這是此次安裝中最為重要的步驟。

步驟 3:使用 yum 從 nDeploy 倉庫安裝 nDeploy 和 Nginx 外掛。

步驟 4:啟用/配置 Nginx 為反向代理。

完成這些步驟後,下面為伺服器中所有可用 PHP 版本安裝 PHP-FPM 包,EA3 使用 remi 倉庫來安裝這些包。你可以執行這個 nDeploy 指令碼來下載所有的包。

root@server1 [~]# /opt/nDeploy/scripts/easy_php_

Loaded plugins: fastestmirror, tsflags, universal-hooks

EA4 | 2.9 kB 00:00:00

base | 3.6 kB 00:00:00

epel/x86_64/metalink | 9.7 kB 00:00:00

epel | 4.3 kB 00:00:00

extras | 3.4 kB 00:00:00

updates | 3.4 kB 00:00:00

(1/2): epel/x86_64/updateinfo | 460 kB 00:00:00

(2/2): epel/x86_64/primary_db

執行該指令碼將為 PHP 54,PHP 55,PHP 56 和 PHP 70 安裝所有這些 FPM 包。

Installed Packages

php54-php-fpm.x86_64 @remi

php55-php-fpm.x86_64 @remi

php56-php-fpm.x86_64 @remi

php70-php-fpm.x86_64 @remi

在以上安裝完成後,你需要為 Apache 啟用 PHP-FPM SAPI。你可以執行下面這個指令碼來啟用 PHP-FPM 例項。

root@server1 [~]# /opt/nDeploy/scripts/apache_php-fpm_ enable

mod_proxy_fcgi.c

Please choose one default PHP version from the list below

PHP70

PHP56

PHP54

PHP55

Provide the exact desired version string here and press ENTER: PHP54

ConfGen:: lxblogger

ConfGen:: blogr

ConfGen:: saheetha

ConfGen:: satest

which: no cagefsctl in (/usr/local/jdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/X11R6/bin:/root/bin)

info [rebuildhttpdconf] Missing owner for domain , force lookup to root

Built /usr/local/apache/conf/ OK

Waiting for “httpd” to restart gracefully …waiting for “httpd” to initialize ……

…finished.

它會問你需要執行哪個 PHP 版本作為伺服器預設版本,你可以輸入那些細節內容,然後繼續配置併為現存的域名生成虛擬主機檔案。

我選擇了 PHP 54 作為我伺服器上的預設 PHP-FPM 版本。

雖然伺服器配置了 PHP-FPM 54,但是我們可以通過 CPanel 為各個獨立的域名修改 PHP-FPM 例項。

下面我將通過一些截圖來為你們說明一下,怎樣通過 CPanel 為各個獨立域修改 PHP-FPM 例項。

安裝了 Nginx 外掛後,你的域名的 CPanel 就會有一個 Nginx Webstack 圖示,你可以點選該圖示來配置你的 Web 伺服器。我已經登入進了我其中的一個 CPanel 來配置相應的 Web 伺服器。

請看這些截圖。

現在,你可以根據需要為選中的主域配置 web 伺服器(這裡,我已經選擇了主域 )。我已經繼續通過自動化配置選項來進行了,因為我不需要新增任何手動設定。

當 Nginx 配置完後,你可以在這裡為你的域名選擇 PHP-FPM 例項。

就像你在截圖中所看到的,我伺服器上的預設 PHP-FPM 是PHP 54,而我正要將我的域名的 PHP-FPM 例項單獨修改成 PHP 55。當你為你的域修改 PHP-FPM 後,你可以通過訪問 phpinfo 頁面來確認。