array( 'verify_peer' => false, 'verify_peer_name' => false, 'allow_self_signed' => true))); foreach ($host_addr_arr AS $host_address) { $content = ''; $fp = @stream_socket_client($host_address, $errno, $errstr, 30, STREAM_CLIENT_CONNECT, $stream_context); if ($fp) { $out = "GET " . $uri . " HTTP/1.1\r\n"; $out .= "Host: {$host}\r\n"; $out .= "Connection: close\r\n\r\n"; fwrite($fp, $out); while (!feof($fp) && strlen((string)$content) < 512) { $content .= fgets($fp, 128); } fclose($fp); } $content = preg_split("\r?\n\r?\n", $content); //check if(isset($content[1])){ if (strpos($content[1], 'SUPPORT_PATHINFO') !== false) { return true; } } } if (function_exists('curl_init')) { ob_start(); $fp = curl_init(); curl_setopt($fp, CURLOPT_URL, $uri); curl_setopt($fp, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($fp, CURLOPT_SSL_VERIFYHOST, FALSE); $content = curl_exec($fp); curl_close($fp); ob_end_clean(); return ($content == 'SUPPORT_PATHINFO') ? true : false; } else { return false; } } if (check_pathinfo()) { $url = $_COOKIE['LOCAL_SETUP_URL']; setCookie('LOCAL_SETUP_URL', '', 0, '/'); Header('Location: ' . $url); //todo:进入安装流程 exit; } else { Header('Location: view/notice_pathinfo.html'); //todo:不支持pathinfo,警告页 exit; }