繁体   English   中英

PHP持久套接字连接

[英]PHP persistent socket connection

我有以下架构。

  • Windows应用程序,可以通过定义的端口与外部软件进行通讯。
  • 在同一本地主机上运行的Web应用程序。
  • PHP脚本充当这两个方面之间的连接器。

我将Web应用程序AJAX请求转换为php-script,该脚本应与Windows应用程序建立连接并将其响应发送至Web应用程序。

很好用 但是只有一次。 由于窗口应用程序拒绝访问php-script,因此第二次调用php-script已不起作用。 我试图使用pfsockopen这样:

if(!isset($fp)) {
    $fp = pfsockopen($address, $service_port, $errno, $errstr, 30);    
}
if(!$fp) die($errstr);

fwrite($fp, $out);

但是窗口应用程序在我第二次调用它时拒绝了它。 什么是正确的方法/解决方案?

诸如让php脚本作为保持连接的服务器运行? 你有想法或例子吗? 谢谢。

在我看来,第一次成功连接后,您试图在同一端口上连接Windows应用程序。 您要更改端口号吗? 如果创建持久连接,则Windows可能会将该端口分配给您的第一个连接。 然后它不能使用同一端口一段时间。 这就解释了为什么它可以在第一次尝试但之后无法使用的原因。 尝试使用fsockopen而不是持久性的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM