Truy cập trang / trạng thái của PHP-FPM theo cách thủ công (bỏ qua Apache)


9

Có một lỗi PHP5.3.3 không cho phép tôi xem trang / trạng thái của php-fpm thông qua Apache2. Có cách nào để truy cập thủ công dữ liệu này? Tôi không thể nâng cấp hộp (Ubuntu 10.10, php5.3.4 không được hỗ trợ).

Tôi đã thử kết nối bằng kỹ thuật ở đây: http://inode.co.nz/testing-a-fastcgi-service , nhưng không gặp may.

Câu trả lời:


12

Để tải trang status /, bạn phải có các biến môi trường nhất định thiết lập, cụ thể: SCRIPT_NAME, SCRIPT_FILENAME, QUERY_STRING, và REQUEST_METHOD. Bạn không cần DOCUMENT_ROOT(ngay cả đối với một yêu cầu bình thường).

Trong nhóm chính xác (nó không phải là cài đặt chung) của bộ cấu hình php-fpm của bạn (hoặc không ghi chú):

pm.status_path = /status

Sau đó chạy (thay PORT):

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

Đầu ra mẫu:

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

Lưu ý: kết quả là nhóm cụ thể.

Đã thử nghiệm trên hệ thống RHEL / CentOS 6 với PHP v5.3.9.

(Điểm đề cập bên cạnh cho những người sử dụng CentOS - gói cung cấp cgi-fcgiđược đặt tên fcgivà có sẵn từ EPEL)

Bên cạnh đó, điều tương tự có thể đạt được với ping:

Đặt: ping.path = /ping(cấu hình php-fpm)

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

Hoặc đối với tệp PHP thông thường (bạn phải sử dụng đường dẫn đầy đủ, QUERY_STRING là tùy chọn):

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

NÓ ĐÃ LÀM VIỆC!!! Tôi đã thử mọi lần lặp lại (REQUEST_METHOD và DOCUMENT_ROOT và (SCRIPT_NAME hoặc SCRIPT_FILENAME)). Cảm ơn bạn vô cùng.
mikewaters
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.