增加 FcgidMaxProcesses 無助於解決“mod_fcgid: can’t apply process slot”錯誤
我有一個資源豐富的專用 apache 伺服器。
- 記憶體 - 64GB
- 核心 - 20
- 使用 CentOS 6.7 x64
和
我使用 MySQL 作為數據庫引擎執行 Magento 應用程序,該數據庫引擎也部署在單獨的資源豐富的專用伺服器上。
網站自一個月以來一直執行良好,但突然它開始拋出錯誤,儘管它沒有處於負載/流量狀態 -
mod_fcgid: can't apply process slot for /var/www/cgi-bin/cgi_wrapper/cgi_wrapper
瀏覽器上出現 503 服務臨時不可用錯誤。所以,我按照以下步驟擺脫它(但它們都沒有真正起作用):
- 我在 fcgid.conf 中增加了“FcgidMaxProcesses”的值並重新啟動了 apache,但它沒有任何區別。錯誤仍然存在。
- 我檢查了文件所有權和權限
755 apache apache/var/run/mod_fcgid/sock
644 root root/var/run/mod_fcgid/fcgid_shm 3. 重新啟動的伺服器,期望現有的 FCGI 程序被刷新並且程序計數從 0 開始,因此程序計數在幾天內不會達到 FcgidMaxProcesses
下面是我的 fcgid.conf 文件。
我知道超時值太高了,但我想這與此錯誤無關,因為頁面載入時間約為 4-5 秒。
LoadModule fcgid_module modules/mod_fcgid.so
<IfModule !mod_fastcgi.c> AddHandler fcgid-script fcg fcgi fpl </IfModule> FcgidIPCDir /var/run/mod_fcgid/sock FcgidProcessTableFile /var/run/mod_fcgid/fcgid_shm FcgidProcessLifeTime 120 FcgidIdleTimeout 30 FcgidIdleScanInterval 5 FcgidMaxRequestsPerProcess 300 FcgidMaxProcesses 1200 FcgidIOTimeout 18000 FcgidBusyTimeout 18000
/usr/bin/php-cgi 程序的大小平均為 70MB
我的問題是為什麼增加 FcgidMaxProcesses 的值沒有任何區別? 是否還有其他需要更改的配置文件?
我安裝了並行 plesk。探勘 /etc 文件夾,我遇到了另一個可能影響 fcgi/FastCGI 操作的服務:
- php-fpm
- sw-engine-fpm
Fcgid 是否依賴任何此類服務來限制其程序?我該如何檢測?
請讓我意識到現實。
提前致謝。
問題現已解決。
並且問題與 FCGID 或任何其他 Apache 模組配置無關。
伺服器突然惡化的原因是攻擊 是的,沒錯!雖然不是 DDoS,但攻擊者以不同的查詢字元串模式(SQL 注入)和目標頁面的頁面載入時間(不包括查詢字元串參數)持續請求大約 3 秒,導致 FCGID 程序的門檻值限制命中。
當我啟用直接突出顯示此類破壞嘗試的mod_status時,我開始了解它。
我阻止了該使用者的 IP,並在一分鐘內所有操作恢復正常。