diff --git a/lib/base.php b/lib/base.php
index 5c33be351a4114b85bdc6b1114e1649137789d16..cd5d8feb1f6bdccde402ad0fa344f1ee64402032 100644
--- a/lib/base.php
+++ b/lib/base.php
@@ -466,7 +466,7 @@ class OC {
 		}
 
 		// setup the basic server
-		self::$server = new \OC\Server();
+		self::$server = new \OC\Server(\OC::$WEBROOT);
 		\OC::$server->getEventLogger()->log('autoloader', 'Autoloader', $loaderStart, $loaderEnd);
 		\OC::$server->getEventLogger()->start('boot', 'Initialize');
 
diff --git a/lib/private/server.php b/lib/private/server.php
index 328a2e05caeba356abe17ae20da6306ea1d72100..59ca2a244d62e1d4f9c12aab682928dfaad25072 100644
--- a/lib/private/server.php
+++ b/lib/private/server.php
@@ -29,7 +29,15 @@ use OC\Tagging\TagMapper;
  * TODO: hookup all manager classes
  */
 class Server extends SimpleContainer implements IServerContainer {
-	function __construct() {
+	/** @var string */
+	private $webRoot;
+
+	/**
+	 * @param string $webRoot
+	 */
+	function __construct($webRoot) {
+		$this->webRoot = $webRoot;
+
 		$this->registerService('ContactsManager', function ($c) {
 			return new ContactsManager();
 		});
@@ -233,8 +241,7 @@ class Server extends SimpleContainer implements IServerContainer {
 				return new NullQueryLogger();
 			}
 		});
-		$this->registerService('TempManager', function ($c) {
-			/** @var Server $c */
+		$this->registerService('TempManager', function (Server $c) {
 			return new TempManager(get_temp_dir(), $c->getLogger());
 		});
 		$this->registerService('AppManager', function(Server $c) {
@@ -638,6 +645,6 @@ class Server extends SimpleContainer implements IServerContainer {
 	 * @return string
 	 */
 	function getWebRoot() {
-		return \OC::$WEBROOT;
+		return $this->webRoot;
 	}
 }