在本地机器上,我在mvc4(razor)上创建了示例项目,并创建了名为“x”的目录,并在其中放置一个文本文件“a.txt”.
http://localhost:64471/x/a.txt
在我的网络配置中,我拒绝所有用户通过此配置访问“x”文件夹:
<location path="x"> <system.web> <authorization> <deny users="*"/> </authorization> </system.web>
现在如果用户发送此请求:
http://localhost:64471/x/
它工作并将用户返回给在web配置中的表单标签中定义的URL.
但是当用户发送此请求时:
http://localhost:64471/x/a.txt
解决方法
我用root web.config中的path =“x”进行了测试.它限制x文件夹下的所有内容;它甚至不会让我浏览〜/ x.我被重定向到登录页面.
你可以尝试在root web.config中这样的完整路径到a.txt吗?
<location path="x/a.txt"> <system.web> <authorization> <deny users="*"/> </authorization> </system.web> </location>
如果仍然不起作用,您可以尝试在x文件夹中创建一个具有以下内容的web.config.
<?xml version="1.0"?> <configuration> <location path="a.txt"> <system.web> <authorization> <deny users="*"/> </authorization> </system.web> </location> </configuration>