Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP将文件从远程站点复制到我的网站_Php_Linux - Fatal编程技术网

PHP将文件从远程站点复制到我的网站

PHP将文件从远程站点复制到我的网站,php,linux,Php,Linux,我试图复制这个视频,但总是在1MB-2MB之间停止,它说 500内部服务器错误 服务器遇到内部错误或配置错误,无法完成您的请求 请与服务器管理员联系,告知错误发生的时间以及可能导致错误的任何操作 有关此错误的详细信息,请参阅服务器错误日志 错误日志: [Mon Feb 03 06:36:38 2014][warn][client 217.131.165.102]mod_fcgid:读取数据超时45秒 [Mon Feb 03 06:36:38 2014][error][client 217.131

我试图复制这个视频,但总是在1MB-2MB之间停止,它说

500内部服务器错误 服务器遇到内部错误或配置错误,无法完成您的请求

请与服务器管理员联系,告知错误发生的时间以及可能导致错误的任何操作

有关此错误的详细信息,请参阅服务器错误日志

错误日志: [Mon Feb 03 06:36:38 2014][warn][client 217.131.165.102]mod_fcgid:读取数据超时45秒
[Mon Feb 03 06:36:38 2014][error][client 217.131.165.102]脚本头过早结束:videoekle.php

这是一个apache超时错误。如果从命令行(而不是通过apache)运行PHP脚本,则不应出现此超时错误。如果需要通过apache运行脚本,可以增加/etc/httpd/conf.d/fcgid.conf中的FcgidIOTimeout设置,然后重新启动apache,这应该可以解决问题。

尝试使用curl,强制超时

 $link = "http://vcdn8.yobt.tv/content/a8/68/e6/a868e6dc4688ecfc0c26de00ed08db7f871427/vid/1_1024x576.mp4";
copy($link, '../video/video12465123.mp4');

然后将其保存到文件中。

检查PHP日志以获取实际错误,并报告
set_time_limit(400);// to infinity for example
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://vcdn8.yobt.tv/content/a8/68/e6/a868e6dc4688ecfc0c26de00ed08db7f871427/vid/1_1024x576.mp4");
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT ,0); 
curl_setopt($ch, CURLOPT_TIMEOUT, 400); //timeout in seconds
$response = curl_exec($ch);
curl_close($ch);