1

如果我使用像http://mysite/myfolder/myfile.dll这样的 URL ,我会看到一个对话框“你想打开还是保存这个文件”。当然,我不希望人们能够下载和反汇编我们的 dll。如何拒绝人们直接访问此类文件?

4

5 回答 5

4

通常默认情况下不允许这样做。如果您进入 IIS 管理器并编辑网站,则需要取消选中“脚本源访问”。DLL 也应该在被禁止的文件扩展名列表中。

于 2009-01-06T13:08:25.963 回答
1

简短的回答是,不应该有您不想在 Web 根目录下提供的文件。

我个人不知道 IIS 6 或 7,但是在 Apache 下,一个目录被指定为 web 根目录,例如 \site\htdocs,并且它上面的任何东西都不能被外部访问。如果您将 DLL 文件保留在该层次结构之外,那么它们将无法访问。

于 2009-01-06T13:04:26.317 回答
0

设置适当的 windows 文件安全和访问权限。

例如,当您使用 asp.net 时,您应该拒绝除 ASPNET 帐户之外的所有用户访问 .dll。

!IUSR_xxx 帐户应该对您的 .dll 没有任何权利!

于 2009-01-06T13:33:00.487 回答
0

在 asp.net 站点中拒绝所有 dll 是非常激烈的,因为 Silverlight 等使用需要由客户端浏览器下载的客户端 dll。

您可以使用 IIS 管理控制台或管理 API 来禁用对 dll 文件或目录的身份验证。

只需取消选中所有身份验证选项,访问将被拒绝。

于 2009-01-06T14:30:52.927 回答
0

如果由于某种原因无法更改 IIS 中的脚本映射,则可以使用HttpForbiddenHandler

于 2011-08-27T14:44:36.317 回答