溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Apache+php-fpm

發(fā)布時間:2020-02-14 11:09:27 來源:網(wǎng)絡 閱讀:815 作者:cszdz123 欄目:web開發(fā)

實驗環(huán)境如下:

node1
Apache server10.1.12.12
node2php-fpm

10.1.12.13

系統(tǒng)環(huán)境:centos 7 

node1

Apache server確認有下面的模塊

~]# httpd -M |grep fcgi
proxy_fcgi_module (shared)

定義一個虛擬主機

~]# vi /etc/httpd/conf.d/vhost.conf
<VirtualHost *:80>
        ServerName www.blackCao.com
        DocumentRoot "/web/www"
        CustomLog logs/black_access.log conbaind
        ErrorLog logs/black_error.log
    <Directory "/web/www">
        Options none
        AllowOverride none
        Require all granted
    </Directory>
        ProxyRequests off
        ProxypassMatch ^/(ping|status|.*\.php)$ fcgi://10.1.12.13:9000/data/application/$1
        DirectoryIndex index.php
</VirtualHost>

ProxyPassMatch 將前端ping|status|PHP結(jié)尾的請求都轉(zhuǎn)發(fā)至后端的PHP服務器后端網(wǎng)頁存放位置自定義;

建立PHP狀態(tài)頁的配置文件

]# vi /etc/httpd/conf.d/status.conf
<Directory /status>
        SetHandler Status-server
        Require all granted
</Directory>


建立虛擬主機主頁目錄

]# mkdir -pv /web/www
[root@s1 ~]# httpd -t
[root@s1 ~]# systemctl start httpd.service
[root@s1 ~]# ss -tnl

檢查語法,啟動服務,查看端口是否監(jiān)聽正常,





node2

~]# vi /etc/php-fpm.d/
listen = 10.1.12.13:9000    必須監(jiān)聽在一個能與外網(wǎng)通信的外部地址的端口
listen.allowed_clients = 10.1.12.12   IP為http server主機的
pm.status_path = /status    PHP的狀態(tài)頁
ping.path = /ping        可檢查PHP服務是否正常
ping.response = pong    上面ping的回應,pong說明正常,不響應說明有問題

建立web文件存放目錄(對應上面虛擬機里定義的路徑)

~]# mkdir -p /data/application
~]# vi /data/application/index.php
<?php
        phpinfo();
?>


配置完成,啟動服務查看9000端口是否在監(jiān)聽狀態(tài)




php-fpm的配置選項

listen.backlog = -1

    假如連接池定義最多能有50個連接,當來了55個的時候。這個選項定義這個后援隊列的長度,-1表示不限制,如果內(nèi)存不夠用的時候可能會做修改

pm = dynamic

定義processor管理機制:static(使用一個固定的子進程數(shù)量)

                       dynamic(使用可變的子進程數(shù)量)

pm.max_children:最大子進程數(shù)量;連接池的最大容量;

pm.start_servers:服務啟動時所啟動的子進程數(shù)量;

pm.min_spare_servers最少空閑子進程數(shù)

pm.max_spare_servers最大空閑子進程數(shù)

rlimit_files = 1024所能打開的文件的數(shù)量,每個連接需要一個套接字文件,最多只有50個

rlimit_core = 0核心所能使用的內(nèi)存空間大小,0表示不作限制

pm.status_path = /status

ping.path = /ping監(jiān)控fpm的工作是否正常

ping.response = pong

php_value[session.save_path] = /var/lib/php/session   session的存儲位置 




status輸出信息


pool:www     #連接池名稱

process manager:  dynamic  #進程管理器類型

start time: 11/Oct/2016:11:22:04 +0800   #啟動日期時間 

start since:917          # 運行時長

accepted conn: 9         # 連接池已經(jīng)處理過的請求數(shù)

listen queue: 0        # 請求隊列長度

max listen queue:  0      # 請求隊列的最大長度

listen queue len: 128      # socket等待隊列的長度

idle processes: 4         # 空閑進程數(shù)量

active processes: 1        # 活躍的進程數(shù)量

total processes: 5        # 連接池中的總進程數(shù)量

max active processes: 2     # 連接池中最大的活躍進程數(shù)量

max children reached: 0     # 達到連接池中最大進程數(shù)量限制的上限的次數(shù)

slow requests: 0 :        啟用了slow-log時,記錄慢請求的數(shù)量







向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI