diff --git a/lib/private/request.php b/lib/private/request.php
index df33217f95d65bde3bcddc1af2e0e37ea5e78816..54e6d8148462bf6e9487919f65b0409bc0c2d2ff 100755
--- a/lib/private/request.php
+++ b/lib/private/request.php
@@ -99,7 +99,7 @@ class OC_Request {
 	public static function scriptName() {
 		$name = $_SERVER['SCRIPT_NAME'];
 		if (OC_Config::getValue('overwritewebroot', '') !== '' and self::isOverwriteCondition()) {
-			$serverroot = str_replace("\\", '/', substr(__DIR__, 0, -4));
+			$serverroot = str_replace("\\", '/', substr(__DIR__, 0, -strlen('lib/private/')));
 			$suburi = str_replace("\\", "/", substr(realpath($_SERVER["SCRIPT_FILENAME"]), strlen($serverroot)));
 			$name = OC_Config::getValue('overwritewebroot', '') . $suburi;
 		}