问题标签 [curl-multi]
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.
php - PHP cURL代理和发布问题
我正在制作一个脚本,可以检查帐户是否仍然有效并且可以工作。我正在使用这个功能:
这是 try.php :
问题是,当我对破解功能执行此操作时,它可以完美运行:
这个^^^的结果是:
mnop 可能是一个有效的密码
但是,一旦我从该部分中删除 // 并取消注释它:
curl_setopt($ch[$i], CURLOPT_PROXY, $proxy);
一切都出错了,这就是结果:
这是 wordlist.txt :
这是 proxylist.txt :
请问有人可以帮我吗???我为此付出了很大的努力,制作整个代码花了很长时间。
php - 为什么 curl_multi 在我的本地主机中无法正常工作?
我使用一个 php 函数来返回 1000 多个网站的状态(即网站是 up 还是 down)。
虽然我使用curl_multi
,但是这个过程的时间很长;为此,我该如何进行并行处理。
php - 了解 php curl_multi_exec
我试图理解 curl_multi_exec。我在这里复制了一段手动示例。所以我想知道,它是如何工作的?第一个循环发送我猜的http请求?但它随后是一个循环内的循环,使用带有看似未记录的标志的函数..
我想并行下载 +=70 个网址 +=。
php - Arduino 客户端 + PHP cURL 服务器执行命令两次
我有这个项目正在做的工作,我从单个 PHP 服务器命令几个 Arduino(Arduino 核心 + ENC28J60 以太网 + x4 继电器执行器)模块来激活任何 Arduino 模块上的继电器。服务器有一个所有事件的列表,并在每个事件合适的时候执行它们。问题在于,只要命令相隔超过 4 分钟(即 >=5 分钟),Arduino 就会执行两次命令。也就是说,Arduino 激活了我连续两次命令的继电器。
代码的作用是: 1. thor.php 线性执行一次(任务由 crontab 重复) 2. thor.php 在其数组中搜索当前时间发生的事件 3. 对于每次出现它都会生成一个任务,该任务被传递给 curl 多处理程序 4。所有任务都并行发送到每个 arduino 模块。5. Arduino收到请求时,检查是否来自已知IP地址和允许的端口,分析参数中的命令,并根据请求激活继电器。6. Arduino 然后发送一个带有隐藏字段的响应页面,该隐藏字段将在未来用于控制。
理论上一切正常,但只要命令相隔 5 分钟或更长时间,Arduino 就会执行两次命令。
我把整个代码放在后面。这是Arduino:(请原谅西班牙语的评论)
雷神.php:
thorconfig.php
常见的.php:
当我在不到 4 分钟的时间内执行命令时它应该只执行一次,否则它会执行两次,有什么想法吗?
编辑:我放弃了 PHP 代码中的问题。我在服务器中安装了一个 lynx 文本浏览器,并在 5 分钟内手动执行命令,得到了相同的结果:来自 Arduino 的重复操作。我留下 PHP 代码以防万一有人对它感兴趣并可能使用它。我将继续尝试以找到解决方案。
编辑 2:我放弃了 Arduino 硬件中的问题。我用相同的代码测试了一个开箱即用的新 Arduino Uno(相同型号),它仍然有相同的错误。
编辑3:只是一个想法。PHP服务器是否有可能期望立即响应并且由于Arduino没有立即给出它然后再次发送数据包从而从Arduino获得双重(延迟)响应?这是另一个问题:Arduino 是否有可能两次通过缓冲区而没有意识到?(对我来说,第二种选择似乎不太可能)。
php - 从 PHP 中的多个 cURL 返回 http 状态码
我试图从我的脚本发出的两个并行 cURL 请求的标头信息中返回两个 http 状态代码。到目前为止,我的脚本如下所示,最后的 print_r() 打印出:Array ( [0] => 200 [1] => )。我不确定为什么它不返回第二个状态码?提前致谢。
php - 多 CURL 请求中的随机 500 错误
我正在尝试通过 curl_multi 从 Web 服务获取一些 hal+json 数据以填写 Bootstrap Typeahead。每次运行这段代码,我curl_multi里面的请求有的会是500,有的会返回我需要的数据。500 是完全随机的;下次我加载页面时,不同的查询将改为 500(而且我没有收到错误)。为什么这种情况不断发生?
这是基于http://www.phpied.com/simultaneuos-http-requests-in-php-with-curl/的 singleRequest 和 multiRequest 的代码:
编辑添加错误检查
php - php curl 多错误处理程序
我想在我的错误处理程序中捕获 curl 错误和警告,以便它们不会被echo
编辑给用户。为了证明所有错误都已被捕获,我将$err_start
字符串添加到错误中。目前这里是我的代码的工作(但简化)片段(在浏览器中运行,而不是 cli):
请注意,我的完整代码有多个并行请求,但是问题仍然表现为单个请求,如此处所示。另请注意,此代码片段中显示的错误处理程序非常基本 - 我的实际错误处理程序不会因警告或通知而死亡,因此无需在这方面对我进行培训。
现在,如果我尝试卷曲当前已关闭的主机,那么我成功捕获了卷曲错误,并且我的脚本因以下原因而死:
但是,我的错误处理程序函数未捕获以下警告,并且正在将其echo
编辑到页面:
我想在我的错误处理程序中捕获这个警告,以便我可以记录它以供以后检查。
我注意到的一件事是,警告仅在 curl 代码位于函数内部时才会出现 - 当代码处于最高范围级别时不会发生。是否有可能CURLM_OK
在函数范围内无法访问 curl 全局变量之一(例如)test_curl()
?
我正在使用PHP 版本 5.3.2-1ubuntu4.19
编辑
- 更新了代码片段以充分展示错误
- 未捕获的警告仅在函数或类方法中出现
curl - Libcurl NXDOMAIN 导致超时
我的应用程序中的 Libcurl 似乎对不存在的域有问题,因为它在“ NXDOMAIN ”请求(这似乎与 CURLOPT_CONNECTTIMEOUT 匹配)上保持至少 7-20 秒。
这是 pmp(穷人的探查器)输出:
该curl
命令似乎没有这个问题。它在一秒钟内完成相同的请求。
这个问题可能与这个有关,因为似乎我已经解决了一个问题并最终解决了另一个问题,无法判断它是在最后一次 ubuntu 更新之后还是之前。
这是我项目中的 libcurl 代码:
我已经从源代码构建了 libcurl v7.30(使用 c-ares 并且没有 ipv6)并安装在 ubuntu 12.10 存储库版本上(不确定是否被覆盖,我使用过make install
)。
在上次自动更新后,我收到了一个错误,但不知道它是否相关。
php - PHP如何做集中curl_multi请求?
我目前有一个用 PHP 编写的网站,利用 curl_multi 轮询外部 API。服务器将子进程从 Web 请求中独立出来,并且运行良好,但它在某种程度上仅限于每个进程的基础。
有时它会遇到带宽瓶颈,需要更好的集中排队逻辑。
我目前正在尝试使用独立后台进程的 PHP IPC 来处理所有传出请求,但被困在通常所说的休闲程序员不太可能满足的事情上。说,垃圾收集,进程间异常处理,请求-响应匹配......等等。我走错路了吗?
那里是否有一种常见的做法(实施理论),甚至是我可以使用的库?
编辑
使用 localhost TCP/IP 通信会使本地流量的压力加倍,这绝对不是一个好方法。
我目前正在使用一些自制协议处理 IPC 消息队列......看起来完全不正确。将不胜感激任何帮助。
php - 如何编写一个不消耗太多 RAM 的机器人?
我有一个网络机器人,它消耗了我太多的内存,一段时间后,内存使用率达到 50%,进程被杀死;我不知道为什么内存使用量会这样增加,我没有包含“para.php”,它是一个用于并行 curl 请求的库。我想了解更多关于网络爬虫的知识,我搜索了很多,但找不到任何有用的文档或我可以使用的方法。
这是我从中获得 para.php 的库。
我的代码: