Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

.Net WebDAV Server

Tags:

c#

.net

webdav

I am looking to implement a WebDAV server in ASP.Net. the app will be deployed to IIS 6. I have seen a few frameworks that provide this functionality, but I can't seem to identify how they're able to accomplish it without (apparently) modifying IIS settings.

My specific question is how do I configure IIS and ASP.Net so that a IHttpModule/IHttpHandler might have an opportunity to handle any of the additional WebDAV verbs (i.e. LOCK, OPTIONS, PROFIND, etc.)

like image 790
Andrew Theken Avatar asked Mar 09 '09 19:03

Andrew Theken


People also ask

Is WebDAV server free?

WebDAV is on the list of file transfer systems that Cyberduck can operate. Key Features: Free to use. Interfaces to cloud file servers.

What replaced WebDAV?

The two most commonly used alternatives to the WebDAV protocol are FTP and SFTP: FTP (File Transfer Protocol): Simple network protocol that allows the transfer of files in computer networks; can be combined with SSL/TLS (FTPS) for secure data traffic.

Do people still use WebDAV?

In many of its use cases, WebDAV is being supplanted by more modern mechanisms. But it's still a reliable workhorse when the right servers and clients are matched, so it's still encountered in many different applications.

What is WebDAV server used for?

Web Distributed Authoring and Versioning or WebDAV is a protocol whose basic functionality includes enabling users to share, copy, move and edit files through a web server. It can also be used to support collaborative applications with features like file locking and revision tracking.


2 Answers

There is no way to configure WebDAV verbs in IIS 6 without modifying IIS settings. It is possible only with IIS 7 and later.

To handle all verbs required by WebDAV in IIS 6 you will need to create an application wildacrd map. Right click on your web application in IIS 6 MMC console and go to Properties->Virtual Directory Tab->Configuration. Click Insert to add new wildcard map.

  • Executable - \Microsoft.NET\Framework\<.Net Framework Version>\aspnet_isapi.dll
  • Verify that file exists - Unchecked

enter image description here

On Home Directory tab of your application properties set Execute permissions to Scripts only and allow reads.

Here is the web.config example: http://www.webdavsystem.com/server/prev/v2/documentation/hosting_iis_asp_net/webconfig_example

Please note that this web.config example was specifically created and tested with ASP.NET 2.0 on IIS 6 on Server 2003 and IIS 5.1 on XP. It does not handle &, %, + and trailing dots (.).

ASP.NET 4.x provides means for handling any special characters in your WebDAV server, configuring web.config, including &, % and '.'. The web.config that supports IIS versions 6-8 is generated by IT Hit WebDAV Server Engine Wizard.

like image 116
IT Hit WebDAV Avatar answered Sep 17 '22 20:09

IT Hit WebDAV


Check out Geoff Lane's articles on WebDAV:

  • http://www.zorched.net/2006/01/20/aspnet-web-application-without-aspx-extension/ - shows configuration of verbs in IIS and HttpModule setup.
  • http://www.zorched.net/2006/02/02/custom-webdav-server-using-net/
  • http://www.zorched.net/2006/03/01/more-webdav-tips-tricks-and-bugs/
like image 36
Corbin March Avatar answered Sep 17 '22 20:09

Corbin March