PHP-FPM के / स्थिति पृष्ठ को मैन्युअल रूप से एक्सेस करें (अपाचे को बायपास करें)


9

एक PHP5.3.3 बग है जो मुझे Apache2 के माध्यम से php-fpm / के स्टेटस पेज को देखने की अनुमति नहीं देगा। क्या इस डेटा को मैन्युअल रूप से एक्सेस करने का कोई तरीका है? मैं बॉक्स को अपग्रेड नहीं कर सकता (Ubuntu 10.10, php5.3.4 समर्थित नहीं)।

मैंने यहां तकनीक का उपयोग करके कनेक्ट करने का प्रयास किया है: http://inode.co.nz/testing-a-fastcgi-service , लेकिन कोई भाग्य नहीं।

जवाबों:


12

आदेश / स्थिति पृष्ठ लोड करने के लिए, आपको कुछ वातावरण चर निर्धारित करते हैं, विशेष रूप से होना चाहिए: SCRIPT_NAME, SCRIPT_FILENAME, QUERY_STRING, और REQUEST_METHOD। आपको ज़रूरत नहीं है DOCUMENT_ROOT(यहां तक ​​कि एक सामान्य अनुरोध के लिए भी)।

आपके php-fpm config सेट (या असहजता) के सही पूल (यह एक वैश्विक सेटिंग नहीं है) के तहत:

pm.status_path = /status

फिर भागो (पोर्ट की जगह):

SCRIPT_NAME=/status \
SCRIPT_FILENAME=/status \
QUERY_STRING= \
REQUEST_METHOD=GET \
cgi-fcgi -bind -connect 127.0.0.1:PORT

नमूना आउटपुट:

X-Powered-By: PHP/5.3.9
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Cache-Control: no-cache, no-store, must-revalidate, max-age=0
Content-Type: text/plain

pool:                 web1
process manager:      dynamic
start time:           28/Jan/2012:20:49:44 -0500
start since:          5955
accepted conn:        41
listen queue:         0
max listen queue:     0
listen queue len:     128
idle processes:       1
active processes:     1
total processes:      2
max active processes: 1
max children reached: 0

नोट: परिणाम पूल विशिष्ट हैं।

PHP v5.3.9 के साथ RHEL / CentOS 6 सिस्टम पर परीक्षण किया गया।

(CentOS का उपयोग करने वाले लोगों के लिए साइड पॉइंट - जो पैकेज प्रदान करता cgi-fcgiहै उसका नाम fcgiEPEL है और उपलब्ध है)

एक तरफ के रूप में, एक ही पिंग के साथ प्राप्त किया जा सकता है:

सेट करें: ping.path = /ping(php-fpm config)

SCRIPT_NAME=/ping\
SCRIPT_FILENAME=/ping\
REQUEST_METHOD=GET \
cgi-fcgi -bind -connect 127.0.0.1:PORT

या एक नियमित PHP फ़ाइल के लिए (आपको पूर्ण पथ का उपयोग करना होगा, QUERY_STRING वैकल्पिक है):

SCRIPT_NAME=/test.php \
SCRIPT_FILENAME=/var/www/path/to/test.php \
QUERY_STRING= \
REQUEST_METHOD=GET \
cgi-fcgi -bind -connect 127.0.0.1:PORT

इसने काम कर दिया!!! मैंने (REQUEST_METHOD और DOCUMENT_ROOT और (SCRIPT_NAME या SCRIPT_FILENAME)) के प्रत्येक पुनरावृत्ति की कोशिश की थी। अविश्वसनीय रूप से धन्यवाद।
mikewaters
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.