我正在尝试打开与我在 Amazon EC2 实例上托管的网络服务器的连接。我可以通过浏览器的 GET 请求访问该端口,这给了我以下信息:
Started HTTP server...
- <IP redacted> [19/Jul/2013 13:49:24] code 501, message Unsupported method ('GET')
- <IP redacted> [19/Jul/2013 13:49:24] "GET / HTTP/1.1" 501 -
这是预期的,因为我没有在网络服务器上实现 GET - 但我使用以下代码段 POST 到同一端口根本没有得到任何响应。
<?php
$req = 'verify=true';
$header = "POST / HTTP/1.1\r\n";
$header .= "Host: ec2-55-555-555-555.compute-1.amazonaws.com\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n";
$fp = fsockopen ("ec2-55-555-555-555.compute-1.amazonaws.com", 8080, $errno, $errstr, 30);
fputs ($fp, $header . $req);
fclose ($fp);
?>
它肯定会运行并到达终点,但fsockopen
通话超时。缺少什么或存在但不应该存在什么?