草庐IT

PHP 使用 cURL 下载一个巨大的电影文件 (500 MB)

好的,我有一个问题希望你能帮我解决。我正在运行一个存储非常大的视频文件的服务器,有些文件高达650MB。我需要一个用户能够请求这个页面并将文件下载到他们的机器上。我已经尝试了所有方法,但是一个普通的readfile()请求在退出前挂起大约90秒,并给我一个“没有收到数据错误324代码”,我从几个网站找到的分块读取文件脚本甚至没有开始下载,通过PHP解决方案的FTP在我尝试获取文件时只给我错误,而我发现的唯一cURL解决方案只是在我的服务器上创建另一个文件。那不是我需要的。明确我需要用户能够下载文件到他们的计算机和不是服务器。我不知道这段代码是垃圾还是只需要一两次调整,但我们非常感谢您的

php - PHP 和 cURL 不支持 SFTP 错误

我听从了thisStackOverflowquestionthread的建议,但我一直遇到障碍。我收到以下错误消息:不支持的协议(protocol):sftp这是我的代码:$ch=curl_init();if(!$ch){$error=curl_error($ch);die("cURLsessioncouldnotbeinitiated.ERROR:$error."");}$fp=fopen($docname,'r');if(!$fp){$error=curl_error($ch);die("$docnamecouldnotberead.");}curl_setopt($ch,CURL

php - 如何使用 curl 从远程页面的 head 标签中提取链接

我有一些url,这些url的所有html在它们的标签中都有以下标签我正在使用下面的代码$url='myurl';$ch=curl_init();curl_setopt($ch,CURLOPT_URL,$url);//Theurltogetlinksfromcurl_setopt($ch,CURLOPT_RETURNTRANSFER,true);//Wewanttogettherespone$result=curl_exec($ch);$regex='|现在我想获取此链接href,但我不知道如何获取。请帮助我谢谢 最佳答案 我更喜欢使

php - CURL 仅在文件被修改时获取文件

我如何了解文件是否在使用CURL打开流之前被修改(然后我可以用file-get-contents打开它)谢谢 最佳答案 检查CURLINFO_FILETIME:$ch=curl_init('http://www.mysite.com/index.php');curl_setopt($ch,CURLOPT_FILETIME,true);curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);curl_setopt($ch,CURLOPT_NOBODY,true);$exec=curl_exec($ch

php - curl 停止工作

我想从列表中搜索关于某个词的一些链接。所以我正在制作一个脚本://htmlcodehere.";}else{echo($item."---WordFound!");echo"";}}}?>它工作正常。但有时脚本会突然停止工作。我不知道为什么。可能它会进入一个没有响应的站点。但为此我使用了CURLOPT_CONNECTTIMEOUT。但是我还没有发现脚本有什么问题。实际上我的问题是,脚本在运行时突然停止。 最佳答案 尝试选项CURLOPT_LOW_SPEED_TIME和CURLOPT_LOW_SPEED_LIMIT//thedownl

php - iCloud CalDAV 通过 PHP

我正在尝试编写一个基本的CalDAV交互脚本,以便与给定帐户的Apple的iCloud日历一起使用。目前,我收到如下所示的响应:PreconditionFailedRequestedresourcehasamatchingETag.我使用的代码最初取自http://trentrichardson.com/2012/06/22/put-caldav-events-to-calendar-in-php/并适应以下内容:'p05','id'=>'######','user'=>'a****z@me.com','pass'=>'*****');$url='https://'.$account[

php - 在结帐中使用 Curl 停止重定向

我正在使用观察者sales_order_save_after来捕获订单信息并将其中的一些信息发送到另一个网络服务。获取订单信息后,我在观察器中使用以下curl片段将信息发送到Web服务。信息发送成功,服务接收。然而,浏览器仍停留在结帐页面上,即使订单已完成,用户也不会被重定向到成功页面。$ch=curl_init();curl_setopt($ch,CURLOPT_URL,'https://myapp.com/');curl_setopt($ch,CURLOPT_POST,1);curl_setopt($ch,CURLOPT_HTTPHEADER,array('Content-Type

php - CURL - 此请求需要 HTTP 身份验证

我有以下代码:$curl=curl_init($query);curl_setopt($curl,CURLOPT_HTTPAUTH,CURLAUTH_BASIC);curl_setopt($curl,CURLOPT_USERPWD,$username.':'.$password);curl_setopt($curl,CURLOPT_VERBOSE,1);curl_setopt($curl,CURLOPT_HEADER,false);curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);curl_setopt($curl,CURLOPT_SSL_

php - Sonata 批量操作和 Hooks 原则

我用Sonata(Symfony2Bundlehttp://sonata-project.org/about)创建了一个管理面板,并且在preRemoveHook(Doctrine)中添加了一个事件。简而言之,当我删除记录时,运行curl到其他服务。一切正常。但是Sonata也有“批处理操作”,我可以在其中选择多行并选择“删除所有选定的”。但是,如果我选择“删除所有选定的”,curl不会启动。preRemove钩子(Hook)(Doctrine)它没有被调用。有人可以帮助我吗?!谢谢 最佳答案 看来,批量删除操作确实避免了调用pre

php - 获取正确的http状态码php

当我访问google时,我的代码给我http状态代码302,但是当我使用firefox浏览器访问并使用firebug检查状态时,状态为200。这是我的代码:$ch=curl_init($url);curl_setopt($ch,CURLOPT_USERAGENT,"Mozilla/5.0(WindowsNT6.1;WOW64;rv:25.0)Gecko/20100101Firefox/25.0");curl_setopt($ch,CURLOPT_RETURNTRANSFER,TRUE);curl_setopt($ch,CURLOPT_FOLLOWLOCATION,TRUE);curl_