From 9b4643f3865f5f14483b2e4618967f6cc91b0a22 Mon Sep 17 00:00:00 2001
From: josh4trunks <joshruehlig@gmail.com>
Date: Thu, 3 Apr 2014 20:46:54 -0700
Subject: [PATCH] Send URI instead of filepath to NGINX for X-Accel

---
 lib/private/files.php | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lib/private/files.php b/lib/private/files.php
index bfe6d3c02d..a377c196cd 100644
--- a/lib/private/files.php
+++ b/lib/private/files.php
@@ -152,7 +152,7 @@ class OC_Files {
 				/** @var $storage \OC\Files\Storage\Storage */
 				list($storage) = $view->resolvePath($filename);
 				if ($storage->isLocal()) {
-					self::addSendfileHeader(\OC\Files\Filesystem::getLocalFile($filename));
+					self::addSendfileHeader($filename);
 				} else {
 					\OC\Files\Filesystem::readfile($filename);
 				}
@@ -167,9 +167,11 @@ class OC_Files {
 	 */
 	private static function addSendfileHeader($filename) {
 		if (isset($_SERVER['MOD_X_SENDFILE_ENABLED'])) {
+			$filename = \OC\Files\Filesystem::getLocalFile($filename);
 			header("X-Sendfile: " . $filename);
  		}
  		if (isset($_SERVER['MOD_X_SENDFILE2_ENABLED'])) {
+			$filename = \OC\Files\Filesystem::getLocalFile($filename);
 			if (isset($_SERVER['HTTP_RANGE']) &&
 				preg_match("/^bytes=([0-9]+)-([0-9]*)$/", $_SERVER['HTTP_RANGE'], $range)) {
 				$filelength = filesize($filename);
@@ -185,6 +187,7 @@ class OC_Files {
 		}
 
 		if (isset($_SERVER['MOD_X_ACCEL_REDIRECT_ENABLED'])) {
+			$filename = \OC::$WEBROOT . '/data' . \OC\Files\Filesystem::getRoot() . $filename;
 			header("X-Accel-Redirect: " . $filename);
 		}
 	}
-- 
GitLab