Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Mapping specific folder to HttpHandler in web.config

Is it possible to map all file extensions in a folder to a specific HttpHandler (assuming that their file extensions are mapped to aspnet_isapi.dll in IIS) ?

I've got the FLV extension mapped to ASP.NET in IIS, and have a folder named Static in my web application with the following files:

  • Static/Index.htm
  • Static/MyFile.flv

The index file is a basic html page using the JW FLV Media Player to play the FLV.

In Web.Config, under the HttpHanders section, the following works (FLV is loaded and plays successfully):

<add verb="*" path="MyFile.flv" type="MyApp.PassthroughFileHandler, MyApp"/>

But this doesn't (video cannot be loaded):

<add verb="*" path="Static/*" type="MyApp.PassthroughFileHandler, MyApp"/>

I've tried various combinations, without much luck.

Ideally, I'd like to be able to have all FLV's in the Static folder use the PassthroughFileHandler, rather than have to specify each filename individually in web.config.

like image 661
Mun Avatar asked Mar 23 '09 14:03

Mun


2 Answers

Here is a diffrent way that doesn't require a "dummy" folder and and a new web.config.

Add this to your main web.config

<location path="static">
  <system.web>
    <httpHandlers>
      <add verb="GET,HEAD" path="*.*" 
           type="MyApp.PassthroughFileHandler, MyApp" />
    </httpHandlers>
  </system.web>    
</location>
like image 64
Shay Erlichmen Avatar answered Oct 27 '22 17:10

Shay Erlichmen


Try placing a second web.config inside that folder, with something like:

<?xml version="1.0"?>
<configuration>
    <system.web>
      <httpHandlers>
        <!-- <clear/> -->
        <add verb="*" path="*.flv"
            type="WebApplication3.MyHandler, WebApplication3"/>
      </httpHandlers>
    </system.web>
</configuration>
like image 31
Marc Gravell Avatar answered Oct 27 '22 16:10

Marc Gravell