我有一个应用程序,其中有一个包含连接字符串的 XML 文件。当点击具有确切文件名的 URL 时,它会在浏览器中自然地打开文件。
现在我需要限制这个文件浏览,我不能改变那个代码来做任何重定向或其他任何事情。
我尝试的是在 web.config 的安全标签中使用denyurlsequences,但它也限制了应用程序访问文件,这使得应用程序停止工作。
我正在使用 .NET Framework 2.0
我有一个应用程序,其中有一个包含连接字符串的 XML 文件。当点击具有确切文件名的 URL 时,它会在浏览器中自然地打开文件。
现在我需要限制这个文件浏览,我不能改变那个代码来做任何重定向或其他任何事情。
我尝试的是在 web.config 的安全标签中使用denyurlsequences,但它也限制了应用程序访问文件,这使得应用程序停止工作。
我正在使用 .NET Framework 2.0
ASP.NET 管道不支持“.xml”文件扩展名,这就是为什么您不能将其添加到 web.config 并对其进行限制的原因。您可以做的是将 xml 文件复制到应用程序的“App_Data”文件夹中。
此文件夹的目的是向浏览器/用户隐藏它的文件,并且也是为此类数据构建的。
如果“App_Data”文件夹不存在,则创建它:
Right click on your project -> Add ASP.NET Folder -> App_Data
或者只是添加一个文件夹并将其命名为 App_Data
我知道它的老问题,但这个答案可能对其他人有帮助。我在 IIS 8.5 上进行了以下配置(确保在 IIS 上安装了请求过滤。)
在我们的应用程序中,我们有一个存储在应用程序文件夹中的主 xml 文件,为了拒绝浏览这个 xml 文件,我在隐藏段中添加了文件夹名称并且它起作用了。