如果我使用http://mysite/myfolder/myfile.dll之类的网址,我会收到一个对话框“您要打开还是保存此文件”。当然,我不希望人们能够下载和反汇编我们的dll。我如何拒绝人们直接访问这些文件?
答案 0 :(得分:4)
通常默认情况下不允许这样做。如果您进入IIS管理器并编辑网站,则需要取消选中“脚本源访问权限”。 DLL也应该在禁止的文件扩展名列表中。
答案 1 :(得分:1)
简短的回答是,不应该有任何您不想在网络根目录下提供的文件。
我个人不知道IIS 6或7,但在Apache下,目录被指定为Web根目录,例如\ site \ htdocs,外面没有任何东西可以访问。如果将DLL文件保留在该层次结构之外,则它们将无法访问。
答案 2 :(得分:0)
设置适当的Windows文件安全性和访问权限。
E.g。当您使用asp.net时,您应该拒绝除ASPNET帐户以外的所有用户访问.dll。
!IUSR_xxx帐户对你的.dll没有任何权利!
答案 3 :(得分:0)
拒绝所有dll在asp.net网站上都很激烈,因为Silverlight等使用客户端浏览器需要下载的客户端dll。
您可以使用IIS管理控制台或Management API来禁用dll文件或目录上的身份验证。
只需取消选中所有身份验证选项,访问权限就会被拒绝。
答案 4 :(得分:0)
如果由于某种原因无法更改IIS中的脚本映射,可以使用HttpForbiddenHandler