【问题标题】:PHP fsockopen() fails, but telnet worksPHP fsockopen() 失败,但 telnet 工作
【发布时间】:2011-07-14 18:09:35
【问题描述】:

我正在尝试让 Sphinx Search 在 Windows7 下工作。到目前为止一切都很好,只是 PHP 无法连接到正在运行的服务。

只有远程网络工作:

远程登录本地主机 3312

php: fsockopen("localhost", 3312, $errno, $errstr, 30);

我决定测试一些其他端口...

两个工作:

telnet 本地主机 80

php: fsockopen("localhost", 80, $errno, $errstr, 30);

只有远程网络工作:

远程登录本地主机 3306

php: fsockopen("localhost", 3306, $errno, $errstr, 30);

可能是因为端口是 3312 和 3306 上的二进制数据吗?

【问题讨论】:

  • “失败”是什么意思?发生什么了?您收到什么错误消息?如果打开失败,PHP 应该会给你一条警告信息,说明失败的原因。
  • Warning: fsockopen() [function.fsockopen]: 无法连接到 localhost:3312 (连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立连接失败,因为连接的主机没有响应。)

标签: php telnet fsockopen


【解决方案1】:

尝试使用 127.0.0.1 而不是 localhost - 很多时候这可能会显示依赖操作系统来为您查找主机名。如果这可行,那么它不是 PHP,而是 PHP 和操作系统之间的链接。

【讨论】:

  • 是的,这适用于端口 3312 和 3306。奇怪的是端口 80 与 localhost 一起使用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-02-15
  • 2013-07-16
  • 2011-11-20
  • 2011-08-14
  • 2011-10-30
  • 2012-06-07
  • 1970-01-01
相关资源
最近更新 更多