我有一个用php制作的文件共享网站,它允许用户下载文件。但是当我使用托管服务器时,对于在php中编码的下载脚本时出现超时和其他因素的限制。这会导致大文件在下载时损坏。我正在寻找一个解决方案,我尝试使用符号链接但力量下载因素没有发生....
我正在考虑使用perl来下载文件,但是根本没有任何线索......
任何人都可以帮助我解决这个问题吗?
答案 0 :(得分:0)
您可以在php脚本中运行bash命令
<?php
$command = "ls -lrat";
Shell_exec($command);
答案 1 :(得分:0)
这是一个粗略的Perl脚本,它使用了CGI模块。它的编写是为了展示核心概念,而不是生产就绪。
它假设:
从根本上说,打印适当的内容类型会强制下载到磁盘。
#!/usr/bin/perl
use strict;
use warnings FATAL => qw(all);
use CGI::Carp qw(fatalsToBrowser);
use CGI;
use Cwd;
my $cgi = CGI->new;
my $dirpath = getcwd;
my $filename = $cgi->param('filename') || die 'filename required';
my $filepath = $dirpath . '/' . $filename;
open my $fh, '<', $filepath or die "cannot open '$filepath': $!";
my $filedata = do { $/ = undef; <$fh> };
close $fh;
print $cgi->header( -type => 'application/octet-stream',
-attachment => $filename );
print $filedata;