首頁 > 後端開發 > php教程 > 不通过 web server 获取 php-fpm 运行状态

不通过 web server 获取 php-fpm 运行状态

WBOY
發布: 2016-06-20 12:40:06
原創
935 人瀏覽過

php-fpm 可以配置一个 pm.status_path ,如 `/status`,然后通过 web server 访问这个地址来获取运行状态。但这样会侵入 web server 的配置,在一个 web server 后端有多个 php-fpm 的适合也不方便分别监控每一个后端的状态,为了安全,还要配置访问控制。

好在有个现成的工具 cgi-fcgi,可以把 fcgi 请求包装成 cgi 方式,这样就可以直接在命令行中调用 fastcgi。

cgi-fcgi 在 redhat/centos 中可以用 `yum install fcgi` 安装,在 ubuntu 中可以用 `apt-get install libfcgi-dev` 安装。

用以下方式就能获取 php-fpm 的状态了。

path=/statusexport REQUEST_METHOD=GETexport SCRIPT_NAME="$path"export SCRIPT_FILENAME="$path"export QUERY_STRING=''# export QUERY_STRING='full'# export QUERY_STRING='json'# export QUERY_STRING='full&xml'addr=/var/run/php-fpm.socket# addr=127.0.0.1:9000cgi-fcgi -bind -connect "$addr"
登入後複製

QUERY_STRING 设置为 full 会显示每一个 worker 进程的状态。添加 json、xml、html 可以以不同格式显示结果。

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板