无法使用ubuntu平台在ec2机器上创建tcp服务器套接字

时间:2014-07-27 10:45:17

标签: php sockets tcp amazon-ec2

我正在尝试使用ubuntu平台在ec2机器上创建一个tcp服务器。虽然php在index.php文件中正常运行,但代码在以下命令中返回false:

socket_create(AF_NET,SOCK_STREAM,SQL_TCP);

虽然它返回false,但socket_last_error()返回0.我检查了phpinfo()的输出,该表显示套接字已启用。我从aws控制台验证了安全组设置。它允许ssh和http流量。

请建议我在机器配置中可能遗漏的内容。

提前致谢。

1 个答案:

答案 0 :(得分:0)

根据socket_create的文档,正确的参数是:

socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

PS:注意AF_INET和SOL_TCP中的拼写错误

我刚刚在一个新的aws t1.micro实例上试过它并且它有效。 (请注意,如果您希望外部世界在打开的tcp套接字上进行通信,则可能必须在安全组的入站规则中添加规则。)