如何在 IIS 上隐藏文本文件目录?

nun*_*cal 6 files iis permissions

我在 IIS 上有一个文本文件目录。我想隐藏这个目录。

我已将 web.config 设置如下:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.web>
        <authorization>
            <deny users="*" /> <!-- Denies all users -->
        </authorization>
    </system.web>
</configuration>
Run Code Online (Sandbox Code Playgroud)

但我仍然可以看到文件的完整目录列表,以及通过网络访问文件。

我设置错了什么?

我也试过这个:

<system.webServer>
      <security>
          <authorization>
              <remove users="*" roles="" verbs="" />
              <add accessType="Allow" roles="Administrators" />
          </authorization>
      </security>
  </system.webServer>
Run Code Online (Sandbox Code Playgroud)

但这也没有帮助我

Pet*_*orf 10

system.web 节点只影响asp.net 文件,*.txt 文件不受它影响。

要对所有用户隐藏文件,IIS 7.x 中有几种方法,这里有两种:

在相关目录内的 web.config 中:

<system.webServer>
    <security>
        <requestFiltering>
            <fileExtensions>
                <add fileExtension=".txt" allowed="false" />
            </fileExtensions>
        </requestFiltering>
    </security>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

或者

<system.webServer>
    <security>
        <requestFiltering>
            <hiddenSegments>
                <add segment="directoryname" />
            </hiddenSegments>
        </requestFiltering>
    </security>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

第一个隐藏所有文本文件,第二个隐藏整个 url 路径,都向用户返回 404。

如果您想允许某些用户访问文件,这些方法将不起作用。您使用的是哪种身份验证?