簡體   English   中英

在Bitnami LAMP堆棧中設置並訪問PHP-FPM狀態頁面

[英]Set up and access the PHP-FPM status page in Bitnami LAMP stack

我想在Bitnami LAMP堆棧系統上看到PHP-FPM狀態頁面。

但是,當我嘗試時,我得到一個空白頁面,或者說錯誤:

Request exceeded the limit of 10 internal redirects due to probable configuration error.

那么我需要做些什么來讓它工作?

這個答案分為兩部分。

首先,您需要在PHP-FPM配置中啟用狀態頁面處理程序,然后您需要設置Apache以將給定的URL路由到該處理程序。

要設置PHP-FPM:

cd /path/to/bitnami
cd php/etc
sudo nano php-fpm.conf

(或者使用你最喜歡的編輯器的任何命令。另外,如果你已經將bitnami安裝為當前用戶而不是使用Bitnami AMI,那么你可能不需要sudo,這使得該文件具有root權限。)

在文件中,找到該行

;pm.status_path = /status    

並將其更改為:

pm.status_path = /php_fpm_status

保存文件。 (在nano, CTRL-X ,然后Y確認)

然后在Apache中設置一個處理程序:

找到要為狀態頁面提供服務的域的Apache配置。 默認情況下,我認為該文件類似於/path/to/bitnami/apache2/conf/bitnami/bitnami.conf但如果你有一個帶有vhosts的實時服務器,你可能已經改變了它。

在配置中,您需要添加:

<VirtualHost xxx>
  ...
  <LocationMatch "/php_fpm_status">
    SetHandler "proxy:fcgi://www-fpm"
  </LocationMatch>
  ...
</VirtualHost>

重啟東西:

sudo /path/to/bitnami/ctlscript.sh restart

然后在Web瀏覽器中打開您的新位置或將其卷曲:

curl ip.add.re.ss/php_fpm_status

你應該看到PHP-FPM狀態,例如:

pool:                 www
process manager:      ondemand
start time:           21/May/2016:20:28:57 +0000
start since:          13
accepted conn:        1
listen queue:         0
max listen queue:     0
listen queue len:     0
idle processes:       0
active processes:     1
total processes:      1
max active processes: 1
max children reached: 0
slow requests:        0

到目前為止一切都很好,但任何人和他的惡意猴子現在都可以查看你的FPM狀態,所以讓我們用IP地址鎖定它。

您可以按照以下格式使用任何IP(例如您的個人IP)。 在Amazon EC2上,我們還可以將請求限制為僅來自服務器自己的私有IP地址(不是公開可見的EIP)。 因此,如果私有IP是10.0.0.1:

<VirtualHost xxx>
  ...
  <LocationMatch "/php_fpm_status">
    Require ip 10.0.0.1
    SetHandler "proxy:fcgi://www-fpm"
  </LocationMatch>
  ...
</VirtualHost>

重新啟動Apache,你仍然可以使用curl 10.0.0.1/php_fpm_status通過命令行訪問狀態,但是對URL的任何遠程請求都會給出403 Forbidden響應。

(您也可以使用密碼保護頁面或做其他奇特的事情,但IP鎖定就足夠了這個基本示例)

請享用! 如果有更好的方法可以做到這一點,那么請分享智慧:-)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM