setBaseUri($baseUri); // Support for LOCK and UNLOCK $lockBackend = new \Sabre\DAV\Locks\Backend\File($tmpDir . '/locksdb'); $lockPlugin = new \Sabre\DAV\Locks\Plugin($lockBackend); $server->addPlugin($lockPlugin); // Support for html frontend $browser = new \Sabre\DAV\Browser\Plugin(); $server->addPlugin($browser); // Automatically guess (some) contenttypes, based on extesion $server->addPlugin(new \Sabre\DAV\Browser\GuessContentType()); // Authentication backend $authBackend = new \Sabre\DAV\Auth\Backend\File('.htdigest'); $auth = new \Sabre\DAV\Auth\Plugin($authBackend); $server->addPlugin($auth); // Temporary file filter $tempFF = new \Sabre\DAV\TemporaryFileFilterPlugin($tmpDir); $server->addPlugin($tempFF); // And off we go! $server->exec();