|
|
- const config = require('./config'),
- webdav = require('webdav-server').v2,
- serveIndex = require('serve-index'),
- express = require('express'),
- app = express(),
- userManager = new webdav.SimpleUserManager(),
- user = userManager.addUser(config.username, config.password, false),
- privilegeManager = new webdav.SimplePathPrivilegeManager(),
- server = new webdav.WebDAVServer({
- requireAuthentification: true,
- httpAuthentication: new webdav.HTTPBasicAuthentication(userManager, 'DAV Auth'),
- privilegeManager: privilegeManager,
- storageManager: new webdav.PerUserStorageManager(config.limit),
- rootFileSystem: new webdav.PhysicalFileSystem(__dirname + '/public')
- })
-
- privilegeManager.setRights(user, '/', ['all'])
-
- app.disable('x-powered-by')
- .use(webdav.extensions.express('/dav', server), express.static(__dirname + '/public'), serveIndex('public/', { 'icons': true, view: 'details' }))
- .listen(config.port, () => {
- console.log('Listening on: ::' + config.port)
- })
|