Merge pull request #3787 from mvn23/patch-1
Thanks @bartv2 and @bantu, merged and closed.
This commit is contained in:
commit
40879c6327
|
@ -46,6 +46,7 @@ class OC_Files {
|
|||
public static function get($dir, $files, $only_header = false) {
|
||||
$xsendfile = false;
|
||||
if (isset($_SERVER['MOD_X_SENDFILE_ENABLED']) ||
|
||||
isset($_SERVER['MOD_X_SENDFILE2_ENABLED']) ||
|
||||
isset($_SERVER['MOD_X_ACCEL_REDIRECT_ENABLED'])) {
|
||||
$xsendfile = true;
|
||||
}
|
||||
|
@ -171,6 +172,21 @@ class OC_Files {
|
|||
if (isset($_SERVER['MOD_X_SENDFILE_ENABLED'])) {
|
||||
header("X-Sendfile: " . $filename);
|
||||
}
|
||||
if (isset($_SERVER['MOD_X_SENDFILE2_ENABLED'])) {
|
||||
if (isset($_SERVER['HTTP_RANGE']) &&
|
||||
preg_match("/^bytes=([0-9]+)-([0-9]*)$/", $_SERVER['HTTP_RANGE'], $range)) {
|
||||
$filelength = filesize($filename);
|
||||
if ($range[2] == "") {
|
||||
$range[2] = $filelength - 1;
|
||||
}
|
||||
header("Content-Range: bytes $range[1]-$range[2]/" . $filelength);
|
||||
header("HTTP/1.1 206 Partial content");
|
||||
header("X-Sendfile2: " . str_replace(",", "%2c", rawurlencode($filename)) . " $range[1]-$range[2]");
|
||||
} else {
|
||||
header("X-Sendfile: " . $filename);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($_SERVER['MOD_X_ACCEL_REDIRECT_ENABLED'])) {
|
||||
header("X-Accel-Redirect: " . $filename);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue