禁用对 IIS 10 上 ASP.NET MVC 5 中文件的直接 URL 访问

问题描述 投票:0回答:1

我已经浏览了几个论坛(将文件添加到

App_Data
,编写处理程序),我一直在寻找解决方案,但到目前为止没有成功。我在每个主
.htaccess
目录中都使用PHP,这禁止直接访问地址和文件,但我不知道如何在用C#编写的ASP.NET MVC 5应用程序中设置它。

.htaccess
我用这个:

<IfModule mod_authz_core.c>
    Require all denied
</IfModule>
<IfModule !mod_authz_core.c>
    Order deny,allow
    Deny from all
</IfModule>

是否有任何选项可以只允许在 C# 项目中或直接在 IIS 10 上直接抓取某些目录(例如 CSS 的 Content 或 JS 的 Scripts)?

在我的 IIS 上,我禁用了目录浏览,但例如,当我直接将 url 写入我的 XML 文件(我的 XML DB)时

https//:web.test.com/Def/db.xml
,我得到了包含所有数据的文件。

c# asp.net asp.net-mvc-5 iis-10
1个回答
0
投票

我的解决方案:

我只需通过 IIS 10 -> 站点 -> NameOfWebSite -> RequestFiltering -> 隐藏段 -> 添加隐藏段来设置我的文件夹

此操作将以下代码块添加到 Web.config:

<system.webServer>        
    <security>
        <requestFiltering>
            <hiddenSegments>
                <add segment="Def" />
            </hiddenSegments>
        </requestFiltering>
    </security>
</system.webServer>
© www.soinside.com 2019 - 2024. All rights reserved.