如何ping FastCGI服务器?

时间:2009-08-19 19:39:36

标签: fastcgi

除了进行TCP连接之外,如何检查FastCGI服务器是否处于活动状态并正常运行?

我有许多远程独立的FastCGI服务器。我想监视FastCGI服务器本身,以确保它活着。仅仅提出Web服务器请求是不够的,因为它会自动路由死服务器。

谢谢!

2 个答案:

答案 0 :(得分:2)

您可以使用FastCGI development kit附带的cgi-fcgi程序。在类似Debian的系统和macports中,程序包含在libfcgi包中。

我的cgi-fcgi调用脚本发布在http://gist.github.com/209446

答案 1 :(得分:1)

您可以连接到FastCGI服务器并发送控制FCGI_GET_VALUES空请求。它应该由fastcgi服务器支持,官方libfcgi应该支持它。

请参阅http://www.fastcgi.com/devkit/doc/fcgi-spec.html

发送到Socket以下:

unsigned char buf[16] = { 1,9,0,0 ,0,0,8,0 , 0,0,0,0, 0,0,0,0};
// fcgi protocols = 1
// fcgi_get_values = 9
// padding  = 8 -- for some reason libfcgi expects non-empty body
// body -- empty 8 bytes.

你应该

unsigned char buf[8] = { 1, 10,0,0, 0,0,0,0 };
// fcgi_protocol = 1
// fcgi_get_values_response = 10

你实际上应该感谢你得到10作为回应。