diff --git a/apps/files/ajax/download.php b/apps/files/ajax/download.php
index fd2d9b891f5676f030633787871820526086d728..e9373f5f6ac253e54085dc59cb20775324cbd928 100644
--- a/apps/files/ajax/download.php
+++ b/apps/files/ajax/download.php
@@ -33,5 +33,5 @@ OCP\User::checkLoggedIn();
 $files = $_GET["files"];
 $dir = $_GET["dir"];
 
-OC_Files::get($dir,$files);
+OC_Files::get($dir, $files, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false);
 ?>
diff --git a/lib/files.php b/lib/files.php
index b405cf1749f73eef0187aa26932799acc71cd946..e0c78d22c2416bc322e197fe48cff216ef3f530b 100644
--- a/lib/files.php
+++ b/lib/files.php
@@ -52,8 +52,9 @@ class OC_Files {
 	*
 	* @param dir  $dir
 	* @param file $file ; seperated list of files to download
+	* @param boolean $only_header ; boolean to only send header of the request
 	*/
-	public static function get($dir,$files){
+	public static function get($dir,$files, $only_header = false){
 		if(strpos($files,';')){
 			$files=explode(';',$files);
 		}
@@ -118,6 +119,11 @@ class OC_Files {
 			header("HTTP/1.0 403 Forbidden");
 			die('403 Forbidden');
 		}
+		if($only_header){
+			if(!$zip)
+				header("Content-Length: ".OC_Filesystem::filesize($filename));
+			return ;
+		}
 		if($zip){
 			$handle=fopen($filename,'r');
 			if ($handle) {