Creating virtual application/directory in physical folder on IIS/ASP.NET

thr picture thr · Feb 20, 2009 · Viewed 9.1k times · Source

What I want to achieve is simple:

Notice that "my-site" is an empty website with a bunch of folders in it, "foo", "bar", "baz", etc.

So when I right click on "foo" and choose "New > virtual directory" and add my application I've written in VS.NET and then try to navigate to http://localhost/foo/upload I get this error:

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.

The thing is, there is no web config. in the "foo"-folder, and it shouldn't since it's only a normal folder in the site. If I add the virtual directory at the top level, at say http://localhost/foo_upload, everything works as it should... so, what am I doing wrong here?

Answer

Chris picture Chris · Feb 20, 2009

It sounds like a permissions problem with your system - for a .NET account the user context ASP.NET runs in requires access to your site.

On systems up to Windows Server 2000 this user was a local account simply called ASPNET, after that is changed to one of the NT_AUTHORITY accounts - the easiest way to find this is to provide the IIS WPG group (a local group) with access to the account.

MS provides instructions at http://support.microsoft.com/kb/316721/, use the above to determine which user account you should check access for.