文件只能通过我的ASP.NET应用程序直接在浏览器中访问?

时间:2009-09-21 08:58:10

标签: c# asp.net windows-server-2003

我想将图像保存在我的webroot中的子文件夹中的Windows Server 2003中的磁盘上的目录中。    mydomain.com/myfolder

我会在那里上传图片,例如test.jpg,我想用ASP.NET显示,这很有用,如果我尝试浏览路径“mydomain.com/myfolder”,则会显示Access拒绝。

我的问题是,如果我输入“mydomain.com/myfolder/test.jpg”,会显示图片,但我只想通过我的ASP.NET应用程序显示它们。

我是否可以使用Windows Server权限管理此操作而不使用Active Directory身份验证模式?

我试图例如只留下NETWORK SERVICE,然后我的.NET应用程序也不再显示图像。

有什么想法吗?

提前致谢 约翰内斯

1 个答案:

答案 0 :(得分:1)

您可以使用Wildcard Application Mappings将所有请求(。*)映射到aspnet_isapi.dll。 然后,您可以控制ASP.NET的所有请求。你可以写例如HttpModule,将处理显示您的图像。

在IIS7中,您可以使用属性

runAllManagedModulesForAllRequests="true"
元素中的web.config中的

<system.webServer><modules>