Программное определение того, на какой файл должен указывать URL-адрес, с помощью ASP.NET 3.5 и IIS 7

Можно ли программно разрешить URL-адрес файла с помощью ASP.NET и IIS? В частности, я бы хотел, чтобы файл находился за пределами моего виртуального каталога (может быть где угодно в локальной файловой системе). Поэтому, если URL-адрес приходит в виде http://mysite/somepicture.jpg, я хотел бы иметь возможность вернуть c:\mypicture.jpg. Я рассмотрел возможность создания IHttpModule для перезаписи URL-адресов, но это не совсем то, что мне нужно — он ограничен URL-адресами на существующем сайте.


person James Cadd    schedule 13.04.2009    source источник


Ответы (2)


Вы не можете добиться этого путем перезаписи URL-адреса, поскольку файл не размещен на вашем веб-сайте. Вы должны использовать метод Response.WriteFile в HttpModule или HttpHandler для ручной передачи файла пользователю.

person mmx    schedule 13.04.2009

Я хотел бы добавить к ответу Мердада, сказав, что вам нужно убедиться, что ваше приложение имеет права на папку, в которой вы хотите жить. Таким образом, вы можете подать это, как предложил Мехрдад.

person Al Katawazi    schedule 13.04.2009