如何使用PHP为同一主机创建多个持久套接字连接TCP / IP

时间:2015-05-20 07:02:13

标签: php sockets tcp

目前我的情况是我有一个托管网络的窗口服务器,并将与unix主机服务器(数据库)通信,以便在用户请求时检索数据。我正在为我的窗口服务器使用apache和PHP。

每当新用户登录并且套接字与特定用户绑定时,我是否可以实际创建一个新的持久套接字连接到主机?

套接字应该只与一个用户绑定。

使用持久套接字的原因是为了安全起见,允许用户在用户登录后继续与其他页面的连接。但是,使用持久套接字只会在连接上,如果第二个用户进来,用户将继续使用现有连接。第二个用户不应与第一个用户共享相同内容。

我尝试过使用fsockopen(),但每当进入其他页面时,它将启动一个新连接,并需要在unix主机端重新输入用户和密码。

有什么方法可以让我的服务器与unix连接保持连接为同一个用户?如果其他用户进入,则需要在登录成功后登录并绑定连接。

2 个答案:

答案 0 :(得分:2)

最终能够通过包含“/”后跟唯一标识符连接到具有多个持久套接字的同一主机

<?php
$identifier = "id1"; //unique identifier for every new persistent socket create
$host = "tcp://mysql.example.com:33/" . $identifier;
$socket = stream_socket_client($host, $errorno, $errorstr, $timeout, STREAM_CLIENT_CONNECT | STREAM_CLIENT_PERSISTENT);
?>

答案 1 :(得分:0)

您需要在Windows网络服务器计算机上提供辅助TCP服务,以维护与大型机的连接。

类似于:http://www.dart.com/telnet-activex-tool-control.aspx