2013-06-25 31 views
10

我發現的所有教程是如何全新安裝MPM + PHP-FPM,因爲我的WordPress博客已經啓動並運行了prefork MPM,糾正我,如果我錯在模擬安裝過程:從prefork MPM切換到工作MPM + php-fpm在Ubuntu的

我在Ubuntu和根據一些教程,下面的行會做所有的招數:

apt-get install apache2-mpm-worker libapache2-mod-fastcgi php5-fpm php5-gd 
a2enmod actions fastcgi alias 

然後你安裝配置在/etc/apache2/conf.d/php5-fpm.conf

<IfModule mod_fastcgi.c> 
       AddHandler php5-fcgi .php 
       Action php5-fcgi /php5-fcgi 
       Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi 
       FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass-header Authorization 
</IfModule> 

畢竟這些,重新啓動:

service apache2 restart && service php5-fpm restart 

問:

1)會造成任何停機時間在以前運行與prefork的MPM網站的全過程?

2)您是否必須更改任何已存在的配置文件,如php或mysql或apache2(它們會在切換後立即生效,而您沒有做任何事情)?

3)我已經有了apc並且正在運行,您是否必須在交換機之後重新安裝/重新配置它?

4)如何確定apache2是否在工作MPM模式下按預期工作?

非常感謝!

+0

我正在做同樣的事情。你是否介意我問你是否這樣做,是否無縫工作或有問題? –

+0

@StephenBaugh:如果我記得正確,只有一兩分鐘的停機時間,因爲'prefork MPM'和'worker MPM'不能同時存在,這意味着一旦'apt-get install apache2-mpm-worker'啓動舊的' prefork MPM' apache服務器將立即停止並開始首先卸載,並且在安裝了所有從'apt-get ...'並正確設置配置之後,'service apache2 restart && php5-fpm restart'服務應該返回以'工人MPM'模式工作。 – Shane

+0

謝謝Shane。我真的很感激你花時間回覆。我們正在使用AWS,所以我只需創建一個實例並在開發環境中嘗試一下。很高興知道這是你的唯一問題。 –

回答

5
  1. 是的,它至少要取代httpd進程運行。你一定要在首先設定的開發項目上進行測試。很容易在配置文件中出現一個需要一段時間才能弄清楚的錯誤。

  2. 對php,mysql沒有改變。是的更改爲Apache httpd.conf放入工作人員配置 - 它們與prefork設置非常不同。你需要在httpd.conf中自己做這些修改。

  3. 不,因爲這是一個php模塊,每當php運行它的作品。也就是說,它將在php-fpm中爲每個池運行一個副本,因此如果您有多個域,則可以將它們分組到一個池中以共享......但如果您這樣做,請注意安全問題。

  4. 的httpd -V顯示 「服務器MPM」

好運!

+0

fyi,新的PHP zendopcache(用於php 5.4+)確實在php-fpm池之間共享緩存。 – troseman

相關問題