2009-02-20 81 views
4

我想实现很简单:在IIS/ASP.NET创建的物理文件夹虚拟应用程序/目录

注意,“我的现场”是一个空的网站中有一个文件夹一束的,“富”,“酒吧”,“巴兹”等

所以,当我右键点击“富”,然后选择“新建>虚拟目录”,并增加我的应用程序已经写在VS.NET,然后尝试导航到http://localhost/foo/upload我得到这个错误:

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,那么所有东西都可以正常工作......所以,我在这里做错了什么?

回答

7

这听起来像是系统的权限问题 - 对于.NET运行的用户上下文的.NET帐户,需要访问您的网站。

在Windows Server 2000以上的系统上,这个用户是一个简单的称为ASPNET的本地帐户,之后被更改为其中一个NT_AUTHORITY帐户 - 最简单的方法是提供IIS WPG组(本地组)有权访问该帐户。

MS在http://support.microsoft.com/kb/316721/上提供说明,使用上述内容来确定您应该检查哪个用户帐户的访问权限。

+0

我非常怀疑这是它吗?考虑到它正在寻找一个不存在(也不应该存在)的文件? – thr 2009-02-20 15:08:35

0

我只是回答有同样问题,并找到这个话题的人。

我向Everyone添加了一个权限(在这种情况下,它将位于文件夹C:\InetPub\my-site\foo\中)。然后,我打印的内容用户执行该文件夹中的应用程序在页面上...

喜欢的东西:

labelCurrentUser.Text = System.Security.Principal.WindowsIdentity.GetCurrent().Name; 

然后我删除权限给大家,并补充说我得到了用户。

相关问题