问题标签 [fsockopen]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
38593 浏览

php - 如何让 SSL 在 fsockopen 中工作?

我在 Windows 上运行 PHP 5.2.6,我在 php.ini 中没有注释extension=php_curl.dllextension=php_openssl.dll因此,我可以看到以下内容phpinfo

我不确定启用 cURL 是否对此至关重要,但由于它提到了 OpenSSL,我想我还是将它包含在此处以保持完整性。


我想做的很简单:使用fsockopen.
到目前为止,我的代码是这样的:

如果我只是传入$host并使用端口 80,这当然可以正常工作。但我真的需要通过 SSL 发送它,现在它不起作用。$response设置为false$errno停留在0,并$errstr设置为php_network_getaddresses: getaddrinfo failed: No such host is known.。我知道这不是服务器关闭或主机名拼写错误等问题,因为如果我不安全地通过端口 80,它确实有效。问题仅在我尝试切换到 SSL 时才开始。

我该怎么做才能让它工作?

0 投票
4 回答
1741 浏览

php - 在 PHP 中使用 fsockopen() 和 fgets() 时,while() 循环如何不停止?

这是一个小型 PHP IRC 机器人的基本连接代码。问题是,似乎 while() 循环在从 IRC 服务器接收数据之前不会超出 fgets()。无论 IRC 服务器是否尚未发送数据,我都希望 while() 循环进行迭代。这可能吗?

0 投票
2 回答
176 浏览

php - Fsockopen 在 isps 服务器上超时

我有一个 apache 服务器在家里晒太阳用于测试目的,我有一个英国 isp 的帐户。在我的家庭服务器上使用 fsockopen 时一切正常,我可以在不同的端口上连接(我专门使用 25 来测试邮件服务器)但是当我将我的网站上传到我的 ISP 时,我不能再使用 fsockopen 连接 - 它只是时间出去。

我认为他们有安全限制阻止我使用此功能 - 我的想法是正确的还是对此有其他解释?

0 投票
2 回答
1209 浏览

php - 为什么在 PHP 中发送 POST 请求时 fsockopen 有性能问题而不是 fopen?

我尝试了两种不同的实现来模拟 POST 表单。一种用途fsockopen(此处示例:http: //www.faqts.com/knowledge_base/view.phtml/aid/7962)和其他用途fopen(此处示例:http: //netevil.org/blog/2006/nov/http- post-from-php-without-curl)。

我遇到了一些严重的性能问题fsockopen- 当我使用调试器单步执行它时,一切似乎都工作得很好,但是当我不附加调试器时,页面需要很长时间才能加载(可能超过 10 秒)。 fopen完美运行(另外我不必解析响应标头)。有谁知道为什么fsockopen会有这些性能问题?它与超时设置有关吗?

我在下面包含了我的代码。

0 投票
2 回答
739 浏览

php - 在 PHP 中将 CURL 转换为 fosckopen

我正在为一个实时网站设置信用卡处理。PHP 没有在 CURL 支持下编译,我不想让网站停止使用它重新编译 PHP,所以我尝试使用与提供的示例代码不同的方法。

示例 CURL 代码:

我尝试使用不同的方法:

虽然这确实给了我正在调用的 URL 的返回值,但它这样做不正确,因为我收到一个错误,说它的格式不正确。我对 CURL 或其他方法都不是很熟悉,所以我不确定我做错了什么。

0 投票
4 回答
990 浏览

php - 来自 php fsockopen 的奇怪延迟 POST

我正在使用以下 php 代码部分。目的是将图像文件从一台服务器发布到另一台服务器。只要文件小于~250k,它就可以完美且非常快速地工作。远远超过 250k,处理时间跃升至约 60 秒,并随着图像大小的增加而增加。

有任何想法吗?

谢谢!

约翰

0 投票
1 回答
856 浏览

php - 仅在 php 中打开 sphinx 端口时出现 fsockopen 问题

将 php 和仅 php 连接到 sphinx 守护程序时出现问题。我已经测试了示例 sphinx php 示例 test.php 并将其缩小为连接问题。

我有以下显示问题的代码,

每当它从命令行或浏览器运行时,我都会收到以下错误,

我已经验证了以下内容,

  1. searchd 确实在运行,并且在端口 9312 上
  2. searchd 可以使用 telnet 连接
  3. searchd 可以连接到使用 sphinx api 中的 test.py
  4. php可以连接到80端口

它在 Westhost VPS 上运行,这似乎是个问题,因为它在我的本地测试机器上运行良好。我有现有的代码,它使用 Python 对索引运行搜索而没有任何问题,所以这个代码让我非常困惑。

一些额外的信息,

PHP 5.2.5 狮身人面像 0.9.9 发布

任何人都知道如何进一步诊断和解决此问题?

0 投票
2 回答
1398 浏览

php - 使用 Content-disposition 查看文件的内容:使用套接字的附件

我想解析动态 .csv 文件的内容。但是,此代码(显然带有 duff 文件名等):

...只需下载文件。

在命令行中使用 openssl 我可以输入完全相同的请求并返回以下响应标头:

为了避免自动下载文件,我尝试使用 截断第一个字符substr,希望浏览器可能会将响应输出fgets视为当前文档的一组标题。那没有用。追求同样的想法,我还尝试在打开套接字之前插入一堆换行符,但这也不起作用。

我的两个问题是:

  1. 为什么浏览器认为它应该下载文件?
  2. 我怎样才能阻止它?

我应该提一下,到目前为止我只使用过 Chrome,但我不明白它为什么会有所作为。

非常感谢,安德烈亚斯

0 投票
4 回答
1516 浏览

php - PHP中的文件资源持久化

我正在开发一个基于 MSN 协议的简单聊天 Web 应用程序。服务器通过从返回的文件资源与 MSN 服务器通信fsockopen ()。客户端通过 访问服务器XMLHttpRequest。服务器最初登录,并打印出客户端通过对象的 接收到的联系人列表(格式为 HTML 表responseText ()XMLHttpRequest

这就是问题所在。负责与 MSN 服务器通信的文件资源必须保持活动状态,才能使所有与聊天相关的功能正常工作(创建对话、跟踪离线/在线状态更改等)。然而,为了XMLHttpRequest完成,PHP 脚本必须完成执行。XMLHttpRequest这意味着客户端在聊天会话正在进行时不会得到任何响应。

更糟糕的是文件资源无法序列化,这意味着我不能简单地将聊天会话存储在$_SESSION []占位符中。

所以,我的问题是,我有没有办法将文件资源从一个文件“传输”到另一个文件?

0 投票
1 回答
662 浏览

fsockopen - 发布数据和接收内容 fsockopen

我不知道如何使用 fsockopen。有人可以发布一个小例子,说明如何使用 fsockopen 将数据发布到不是我的网站,然后返回带有发布数据的页面的源代码。

id 的一个例子是让我们说一个网站将任何名称为“输出”的表单乘以 5。所以如果我用输出“2”向它发布数据,页面应该回显“10”,我想要一个变量来获取“10”时的文件内容。