我想要实现的目标很简单:
请注意,“my-site”是一个空网站,里面有一堆文件夹,“foo”,“bar”,“baz”等。
所以,当我右键单击“foo”并选择“New&gt; virtual directory”并添加我的应用程序时,我已用VS.NET编写,然后尝试导航到http://localhost/foo/upload我收到此错误:< / p>
Parser Error Message: An error occurred loading a configuration file: Failed to
start monitoring changes to 'C:\InetPub\my-site\foo\web.config'
because access is denied.
问题是,没有网络配置。在“foo”文件夹中,它不应该因为它只是网站中的普通文件夹。如果我在顶层添加虚拟目录,比如说http://localhost/foo_upload,那么一切都按原样运行......那么,我在这里做错了什么?
答案 0 :(得分:7)
这听起来像是系统的权限问题 - 对于.NET帐户,ASP.NET运行的用户上下文需要访问您的站点。
在Windows Server 2000之前的系统上,此用户是一个简称为ASPNET的本地帐户,之后更改为其中一个NT_AUTHORITY帐户 - 找到这个帐户的最简单方法是提供IIS WPG组(本地组)访问该帐户。
MS在http://support.microsoft.com/kb/316721/提供说明,使用上述内容确定您应该检查哪个用户帐户。
答案 1 :(得分:0)
我只是回答有同样问题的人并找到了这个话题。
我向Everyone添加了一个权限(在这种情况下,它将位于文件夹C:\InetPub\my-site\foo\
中)。然后我在页面上打印了用户在此文件夹中执行应用程序的内容......
类似的东西:
labelCurrentUser.Text = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
然后我删除了所有人的权限,并添加了我收到的用户。