PHP / Perl文件大小功能在新服务器上不起作用
|
我的功能无法正常运行,因为我将站点从共享主机移到了VPS(两个操作系统都具有相同的Linux OS,php版本5.2.9和Perl版本5.8.8),我遇到了问题。
当我的脚本将远程文件存储到本地目录时,我使用XMLHttpRequest以固定的间隔(5秒)运行一个简单的php脚本,该php脚本执行一个Perl脚本,该脚本返回当前文件的大小(已下载的字节数)。
这是PHP代码:
<?php
if (isset($_GET[\'file\'])) {
clearstatcache();
$file = $_GET[\'file\'];
exec(\"/usr/bin/perl /home/xxxxxx/public_html/cgi-bin/filesize.pl $file\", $output);
//print_r($output);
if (!empty($output) || $output[0] != \"\") {
$currentSize = $output[0];
file_put_contents(\'progress.txt\', $currentSize);
} else {
...
...
}
}
?>
这是Perl代码
#!/usr/bin/perl
$filename = $ARGV[0];
$filepath = \'/home/xxxxxx/public_html/tmp_dir/\'.$filename.\'.flv\';
$filesize = -s $filepath;
print $filesize;
当我在共享服务器上运行这些脚本时,我没有问题,可以看到下载进度,但是现在,只有在完全下载了远程文件并且看不到进度时才打印文件大小。
我想我需要更改php设置中的某些内容,但我不确定,我也不知道需要更改什么。
好的,对不起/愚蠢,filesize()函数可以正常工作,谢谢大家。
没有找到相关结果
已邀请:
2 个回复
鲁釜头
箩冀娥
请记住,您可以改用PHP
: