服务器为新浪云,本机为Windows,开启ss代理。
$service_port = getservbyname('http', 'tcp');
$address = gethostbyname('server address');
if (($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === false) {
echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n";
}
if (socket_bind($sock, $address, $service_port) === false) {
echo "socket_bind() failed: reason: " . socket_strerror(socket_last_error($sock)) . "\n";
}
if (socket_listen($sock) === false) {
echo "socket_listen() failed: reason: " . socket_strerror(socket_last_error($sock)) . "\n";
}
执行报错:
Warning: socket_bind(): unable to bind address [10049]: The requested address is not valid in its context.
Warning: socket_listen(): unable to listen on socket [10022]: An invalid argument was supplied.
怀疑是本机不能与服务器进行直连
stackoverflow参考
请问v友们是如何解决这些问题的?端口转发?
还有服务器与客户端有没有更简单和方便的通信方式?Http?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.