View Single Post
  #2  
Old 4th January 2012, 14:58
mario_antonio mario_antonio is offline
Junior Member
 
Join Date: Dec 2011
Posts: 7
Thanks: 0
Thanked 0 Times in 0 Posts
Default

This is the piece of code generating those requests ....

/usr/local/ispconfig/server/lib/classes/monitor_tools.inc.php

/* Monitor Webserver */
$data['webserver'] = -1; // unknown - not needed
if ($services['web_server'] == 1) {
if ($this->_checkTcp('localhost', 80)) {
$data['webserver'] = 1;
} else {
$data['webserver'] = 0;
$state = 'error'; // because service is down
}
}

-----------------

private function _checkTcp($host, $port) {
/* Try to open a connection */
$fp = @fsockopen($host, $port, $errno, $errstr, 2);

if ($fp) {
/*
* We got a connection, this means, everything is O.K.
* But maybe we are able to do more deep testing?
*/
if ($port == 80) {
/*
* Port 80 means, testing APACHE
* So we can do a deepter test and try to get data over this connection.
* (if apache hangs, we get a connection but a timeout by trying to GET the data!)
*/
fwrite($fp, "GET / HTTP/1.0\r\n\r\n");
stream_set_timeout($fp, 5); // Timeout after 5 seconds
$res = fread($fp, 10); // try to get 10 bytes (enough to test!)
$info = stream_get_meta_data($fp);
if ($info['timed_out']) {
return false; // Apache was not able to send data over this connection
}
}

/* The connection is no longer needed */
fclose($fp);
------------------
Reply With Quote