Update WebDAV: root path + 0.0.0.0 bind
This commit is contained in:
@@ -68,7 +68,7 @@ async fn run_webdav_server(
|
|||||||
let vfs = Box::new(crate::vfs::local_fs::LocalFs::new());
|
let vfs = Box::new(crate::vfs::local_fs::LocalFs::new());
|
||||||
let upload_hook = None;
|
let upload_hook = None;
|
||||||
|
|
||||||
let dav_handler = crate::webdav::create_webdav_handler(vfs, home_dir, upload_hook, user.clone());
|
let dav_handler = crate::webdav::create_webdav_handler(vfs, home_dir.clone(), upload_hook, user.clone());
|
||||||
|
|
||||||
async fn webdav_auth_middleware(
|
async fn webdav_auth_middleware(
|
||||||
Extension(expected): Extension<crate::webdav::WebdavCredentials>,
|
Extension(expected): Extension<crate::webdav::WebdavCredentials>,
|
||||||
@@ -109,21 +109,21 @@ async fn run_webdav_server(
|
|||||||
}
|
}
|
||||||
|
|
||||||
let app = Router::new()
|
let app = Router::new()
|
||||||
.route("/webdav", any(handle_dav))
|
.route("/", any(handle_dav))
|
||||||
.route("/webdav/", any(handle_dav))
|
.route("/*path", any(handle_dav))
|
||||||
.route("/webdav/*path", any(handle_dav))
|
|
||||||
.layer(Extension(dav_handler))
|
.layer(Extension(dav_handler))
|
||||||
.layer(Extension(crate::webdav::WebdavCredentials {
|
.layer(Extension(crate::webdav::WebdavCredentials {
|
||||||
username: user,
|
username: user.clone(),
|
||||||
password,
|
password,
|
||||||
}))
|
}))
|
||||||
.layer(middleware::from_fn(webdav_auth_middleware));
|
.layer(middleware::from_fn(webdav_auth_middleware));
|
||||||
|
|
||||||
let addr = format!("127.0.0.1:{}", port);
|
let addr = format!("0.0.0.0:{}", port);
|
||||||
let listener = TcpListener::bind(&addr).await?;
|
let listener = TcpListener::bind(&addr).await?;
|
||||||
|
|
||||||
println!("WebDAV server listening on http://{}", addr);
|
println!("WebDAV server listening on http://{}", addr);
|
||||||
println!("Mount point: /webdav");
|
println!("Root: {}", home_dir.display());
|
||||||
|
println!("User: {}", user);
|
||||||
println!();
|
println!();
|
||||||
println!("Press Ctrl+C to stop");
|
println!("Press Ctrl+C to stop");
|
||||||
|
|
||||||
|
|||||||
@@ -1130,7 +1130,7 @@ fn create_webdav_handler_inner(
|
|||||||
dav_server::DavHandler::builder()
|
dav_server::DavHandler::builder()
|
||||||
.filesystem(dav_fs)
|
.filesystem(dav_fs)
|
||||||
.locksystem(locksystem)
|
.locksystem(locksystem)
|
||||||
.strip_prefix("/webdav")
|
.strip_prefix("")
|
||||||
.build_handler()
|
.build_handler()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user