[asp.net] IIS 500.19 with 0x80070005 The requested page cannot be accessed because the related configuration data for the page is invalid error

I want to upload my own asp.net website on IIS with IIS Manager. But when I do this, I get the following error

HTTP Error 500.19 - Internal Server Error The requested page cannot be accessed because the related configuration data for the page is invalid

Module IIS Web Core
Notification Unknown
Handler Not yet determined
Error Code 0x80070005
Config Error Cannot read configuration file due to insufficient permissions
Config File \\?\C:\Users\Yasso\Documents\Visual Studio 2008\WebSites\WebSite5\web.config

I searched many times for a solution for this error, but none of the solutions solved the error.

I have a problem with my IUSR account. I can't see this account in the "group or user names" in the properties of the web.config.

What is the problem?

This question is related to asp.net iis-7 iis-manager

The answer is


This can also happen if the site is configured to use the IIS URL Rewrite module but it is not installed.


None of this worked for me, but I finally have a solution which worked for me:

remove this line in web.config:

<compilation debug="true" targetFramework="4.5"/>

don't remove this line

<compilation debug="true"/>

In my case it works just commenting (or deleting) the anonymousAuthentication property:

 <security>
     <authentication>
         <!--<anonymousAuthentication enabled="true" />-->
     </authentication>
 </security>

I was having the same problem, here is the solution that worked for me.

  1. IIS Manager
  2. Right clicked on that Website
  3. Edit Permissions
  4. Added user 'IIS_IUSRS' from Security tab
  5. Gave full permissions to User 'IIS_IUSRS'
  6. Set the Application Pool's Identity to 'ApplicationPoolIdentity'

In my case what I did was just run visual studio in administrator mode.


I too had the similar issue and i fixed it by commenting some sections in web.config file.

The project was earlier built and deployed in .Net 2.0. After migrating to .Net 3.5, it started throwing the exception.

Resolutions:

If your configuration file contains "<sectionGroup name="system.web.extensions>", comment it and run as this section is already available under Machine.config.


You can get this error if you have a synax error or issue in your web.config file.

For me, it was a stray ampersand in a URL that I was using in the AppSettings.


On the IIS 7.5 error page you get click on 'View more Information' at the bottom of the page and in this case it will take you to the following Microsoft link:

http://support.microsoft.com/kb/942055

The 0x80070005 Error Code seems to be permissions related and following the steps in Resolution 2, Method 2 assigning the correct accounts with permissions on relevant folders should fix it - I spent 3 days looking for a solution until I came across it, worked straight after.


Install ASP.NET Core module

Download the installer using the following link: https://www.microsoft.com/net/permalink/dotnetcore-current-windows-runtime-bundle-installer


Actually, any missing module can lead to this problem. In my case, it was CORS Module. So read the web.config and seek for any addon module that you specified in it and check that it is installed, or install it otherwise. Unfortunately, the error message does not help finding the problem at all.


In my case, it caused by application physical path point to a non-existent folder in IIS.

application setting screenshot


For Visual Studio (VS) developers: As hinted at by Harvey Darvey, Savage, and Snives, your Application Host Configuration may be pointing to the wrong application physical path. Search for virtualDirectory within /.vs/config/applicationhost.config to change the physicalPath if it is incorrect.

enter image description here

Make sure the physicalPath is correct:

enter image description here


Just change namespace from [WebService(Namespace = " http://tempuri.org/ ")] to

http://microsoft.com/webservices/

I solved my problem with this solution


Finally, I got the solution for my problem. The ASP.net account did not appear in the IIS manager, because I didn’t check its checkbox in IIS. To do this in Windows 7 follow the steps:

  1. Open control panel
  2. Click on “program” link (not uninstall programs)
  3. Click “turn windows features on/off” link
  4. Locate “Internet Information services IIS” in the pop up window and expand its node
  5. Expand the “World Wide Web Service” node
  6. Expand “Application Development Features” node
  7. Check the check box of “ASP.NET”
  8. Then click ok button

Now, you will see the ASP.net account on the IIS manager and by default you will see the IIS account. Now, you should move your ASP.net website from “my document” to another place where the IIS have permission to access it (i.e. to another partition on your computer). Now, browse your website from the IIS manager and it should work.

Thanks a lot for Jeff Turner for the solution.


Explore the folder where your website is store and see you will get one extra folder "aspnet_client" delete that folder and it will work for you.

I tried this my problem is solved.

If it works for you please make it as answer so that some body else will also get solution.


I do these steps to solve this problem in Windows Server 2012, IIS 8.5. Should work for other versions too.

  1. Go to server manager, click add roles and features
  2. In the roles section choose: Web Server
  3. Under Security sub-section choose everything (I excluded digest, IP restrictions and URL authorization as we don't use them)
  4. Under Application Development choose .NET Extensibility 4.5, ASP.NET 4.5 and both ISAPI entries
  5. In the features section choose: NET 3.5, .NET 4.5, ASP.NET 4.5
  6. In the web server section choose: Web Server (all), Management Tools (IIS Management Console and Management Service), Windows

In my case I selected application pool with .NET Framework 2.0 and enabled 32-bit application. I had .NET Framework 2.0 application.

I get a "An attempt was made to load a program with an incorrect format" error on a SQL Server replication project


One other possibility that fixed this problem for me:

IIS -> Edit Permissions -> Security Tab -> Give "Users" appropriate permissions (or IIS_IUSRS, depending on your setup)


In my case installing IIS URL Rewrite module solved the problem.


For me, I was getting latest from source control and this happened.

The applicationhost.config file's virtualDirectory path was different than in my machine.

I restored my own copy and it works. I am using IIS express.

enter image description here


Pretty straight forward, IIS doesn't have access to your web.config. I'd start by taking the site out of your documents folder. Verify it has r/w permissions then as well.


I ended up solving this issue by deleting the obj folder of my web application. After rebuilding the solution, problem was gone.


In my case, configSections must be at top in configuration

<configuration>
<configSections>
...
</configSections>
<othersetting>
</othersetting>
.....

I had the issue as I copied my web.config file down from prod, changed everything not prod related except the Rewrite rules which were rewriting to httpS.

Removed those rules and ran fine.


This also happened to me when I had a default document of the same name (like index.aspx) specified in both my web.config file AND my IIS website. I ended up removing the entry from the IIS website and kept the web.config entry like below:

<system.webServer>
  <defaultDocument>
    <files>
      <add value="index.aspx" />
    </files>
  </defaultDocument>...

Try installing the 'Application Development' sub component of IIS as mentioned in this SO

  • Click "Start button" in the search box, enter "Turn windows features on or off"
  • in the features window, Click: "Internet Information Services"
  • Click: "World Wide Web Services"
  • Click: "Application Development Features"
  • Check (enable) the features. I checked all but CGI.

enter image description here


got this problem with mapped drives, IIS doesn't work with mapped drives. Just use the unmapped drive.


To resolve this, make sure you installed the hosting bundle.

https://dotnet.microsoft.com/download/dotnet-core/3.1 enter image description here


Nothing here worked for me, I found this command in another SO answer though and it solved my problem. Just start command prompt as an administrator and run this command:

run->cmd

run "c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i"

Credit: User Vicxx


Make sure you have the application pool set to the correct version of the framework. You'll also need to make sure your aspnet, IIS_IUSRS, or IUSR users have read access to the application's directory.


open your folder which content your project with Windows Explore. right click that folder and add rights for IUSER user.


You need to assign permissions for IIS_IUSRS on the local machine (but you don't have to assign for IUSR, in fact it will work even if you explicitly deny permissions).

To assign permissions, just right click on the folder and on the security tab make sure to grant the correct permissions, and if the user is not listed then click "ADD", and enter IIS_IUSRS (and make sure that under "domain" the local computer is selected, or enter in the name field YourLocalComputerName\IIS_IUSRS), and then you are good to go.

If you want you can instead of assigning permissions to the IIS_IUSRS group, you can instead assign to the app pool which should in general be "IIS APPPOOL\ app pool name".


Just to chip in, I received the same kind of error and my problem was quite simple: I was missing the .NET Core Hosting Bundle. Once I installed the tool and restarted the server, it was fine.

You can find the manual to host asp.net core on windows here: https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.2


Check the Error/HResult Code and follow this guide:

0x80070005

This problem occurs for one of the following reasons:

  • You are using IIS 7.0 on a computer that is running Windows Vista. Additionally, you configure the Web site to use UNC Passthrough authentication to access a remote Universal Naming Convention (UNC) share.

The IIS_IUSRS group does not have the appropriate permissions for the ApplicationHost.config file, for the Web.config file, or for the virtual/application directories of IIS.

Solution

Method 1

Do not configure the Web site to use UNC Passthrough authentication to access the remote UNC share. Instead, specify a user account that has the appropriate permissions to access the remote UNC share.

Method 2 (most likely)

Grant the Read permission to the IIS_IUSRS group for the ApplicationHost.config file or for the Web.config file.

So in simple words, you need to:

  1. Open Properties of the folder containing your reported Config File (such as Web.config).
  2. In Security tab, Edit... and Add...: IIS_IUSRS group and confirm.

I got this bizarre error after specifying values in the web.config at the following-path system.webServer\security\authentication

We prefer to control how IIS is configured using web.config since IIS is a dreadful product and hard to configure using other methods.

The problem was that IIS stamps its authoritay by locking parts of configuration to outside meddlers.

The authentication configuration can be unlocked using the Feature Delegation applet at the IIS Server level, setting Read/Write.

Of course, whereas before we'd have to automate the configuration of IIS auth types, now we have to automate the unlocking. Did I mention IIS is a dreadful product?


* Very Easy Solution:

  1. Go to IIS

  2. Select your application from left Pane.

  3. Double click on Directory Browsing in middle Pane.

  4. Now go to right pane and under Action tab, Just click 'ENABLE'

That's all !!

People, try to understand the error: Config Error Cannot read configuration file due to insufficient permissions


Facepalm alert:

You will also get this error if the path to the config file is wrong. Double-check it to make sure the physical path is entered correctly in IIS.


I was getting this error when running my project from my local machine using visual studio 2017

Not one of these solutions worked for me. At the end of the day, the fix that worked for me was the following:

  1. Right click on the project -> Properties -> Web -> Project Url
  2. In the project Url text box, I incremented my port number by one and then clicked on Create Virtual Directory button.
  3. Save your changes and then run the project again.

The same thing happened with me , Try checking this by double clicking on the Connection strings on the right pane of IIS 7 when you select a website.

It will give you an error (that there is some problem with web config file), because you have used URL rewrite rules and the respective component is not installed.

Install “Microsoft URL Rewrite Module 2.0 for IIS 7” and this should fix your problem



I changed my web.config file to provide actual path than a relative.

<httpPlatform processPath="F:\Projects\.....
instead of 
<httpPlatform processPath="..\approot\web.cmd"

Sometimes this message has can be missing components in your IIS environment e.g. a particular framework, or an IIS feature like dynamic compression, rather than permissions to web.config.

If this is the case, a solution can be to install and use the Microsoft Platform Installer and install those missing components - you might have to take a stab at what exactly is missing because the error log and message don't tell you.


Add local account IIS_IUSRS to security, and grand them read/execute access. that works on my case.


You need to set permission for your Website folder or copy they to wwwroot folder :) - If set permission, have 2 way: + Right click to Your Website folder + Or right click to Your Website in IIS => select Edit permission and Add a permission (IUSR - default iis user) Good luck ;-)


After a server crash we had a site start giving the "HTTP 500.19 0x80070005 Error - Cannot read configuration file web.config" error. Normally it would be permissions or the anonymous user configuration, but those were set fine and hadn't changed. Suspecting something got corrupted in the IIS metabase (or in the in %windir%\system32\inetsrv\config\applicationHost.config since IIS7) I was able to get it back up and running by deleting the site in IIS and re-creating it.


Ehm. I had moved my site/files to a different folder. Without changing the path in the IIS website.

You may all laugh now.


Examples related to asp.net

RegisterStartupScript from code behind not working when Update Panel is used You must add a reference to assembly 'netstandard, Version=2.0.0.0 No authenticationScheme was specified, and there was no DefaultChallengeScheme found with default authentification and custom authorization How to use log4net in Asp.net core 2.0 Visual Studio 2017 error: Unable to start program, An operation is not legal in the current state How to create roles in ASP.NET Core and assign them to users? How to handle Uncaught (in promise) DOMException: The play() request was interrupted by a call to pause() ASP.NET Core Web API Authentication Could not load file or assembly 'CrystalDecisions.ReportAppServer.CommLayer, Version=13.0.2000.0 WebForms UnobtrusiveValidationMode requires a ScriptResourceMapping for jquery

Examples related to iis-7

Accessing a local website from another computer inside the local network in IIS 7 500.21 Bad module "ManagedPipelineHandler" in its module list HTTP Error 503. The service is unavailable. App pool stops on accessing website IIS - 401.3 - Unauthorized 500.19 - Internal Server Error - The requested page cannot be accessed because the related configuration data for the page is invalid ASP.NET Web API application gives 404 when deployed at IIS 7 WebApi's {"message":"an error has occurred"} on IIS7, not in IIS Express enabling cross-origin resource sharing on IIS7 How to fix 'Microsoft Excel cannot open or save any more documents' IIS 7, HttpHandler and HTTP Error 500.21

Examples related to iis-manager

IIS 500.19 with 0x80070005 The requested page cannot be accessed because the related configuration data for the page is invalid error