Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan NowHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
FREEDOM251

Freedom251 › Blog › ASP.NET Core

How to Fix IIS Web Core Error 0x80070002 (File Not Found)

By Freedom251 Team · · 10 min read

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

IIS Web Core error 0x80070002 means IIS could not find a file or path required to process the request. The missing item may be the site’s physical directory or requested file, an executable, a module DLL, or a path referenced in Web.config or ApplicationHost.config. On an HTTP 500.19 page, first record the complete diagnostic details, then verify the path and permissions before changing server-wide settings. If the site is ASP.NET Core, also check the published executable, antivirus quarantine history and the matching .NET Hosting Bundle.

What IIS Web Core 0x80070002 means

In Microsoft’s IIS Web Core and MapRequestHandler example, HRESULT 0x80070002 is paired with “File Not Found.” IIS has reached a processing stage but cannot locate something it needs. That “something” is not always the URL’s final HTML file. It can be the site directory, a virtual-directory target, a configured handler executable, a module DLL, or an ASP.NET Core process file.

As an Amazon Associate I earn from qualifying purchases.

The same failure often appears as HTTP 500.19. Microsoft describes 500.19 as a page that cannot be accessed because the related configuration data is invalid. A 500.19 response can result from malformed XML, a locked configuration section, insufficient permissions, duplicate entries, a missing module, an invalid content path, or missing ASP.NET Core Hosting Bundle components. The HRESULT and the fields on your particular error page determine which branch applies.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

This is a path or configuration failure, not proof that the server is infected. Do not begin by deleting files or reinstalling IIS. Narrow the failure to the stage and file named by the diagnostic page.

Read the complete error page before changing anything

Open the response on the server, or enable detailed errors only for a controlled diagnostic request. Record every field exactly as displayed:

  • Requested URL and the HTTP method, if shown.
  • Physical Path, including the drive, directory and filename.
  • Module, such as IIS Web Core.
  • Notification, such as MapRequestHandler.
  • Handler selected for the request.
  • Error Code or HRESULT, including the full 0x80070002 value.
  • Config Error, Config File and the line or column number, when supplied.

A Web Core error reported at MapRequestHandler with 0x80070002 points first toward a missing or unreachable path. A line number in Web.config points toward parsing or configuration. A process-start message for an ASP.NET Core application points toward the published executable, an antivirus quarantine event or the Hosting Bundle.

Use the failure stage to choose the right fix

Failure stage Typical evidence First place to inspect
Content lookup Physical path does not exist, or the requested file is absent Site or application Basic Settings, virtual directory and target file
Configuration parsing Config Error names XML, an invalid section, a duplicate entry or a locked section Reported Web.config and the inherited configuration in ApplicationHost.config
Module loading Handler or module refers to an unrecognized extension or missing DLL Module and handler declarations, then the required IIS extension installation
Process startup ASP.NET Core process path cannot be started, or executable is missing Published output, process path, antivirus quarantine and .NET Hosting Bundle

These categories overlap. For example, an incorrect executable path is a file-not-found problem, while an unrecognized section can prevent IIS from reading the path at all. Work from the exact error fields rather than applying every remedy.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Step-by-step troubleshooting

1. Verify the site’s physical path

  1. Open IIS Manager and expand Sites.
  2. Select the affected site, or the application beneath it, and choose Basic Settings… from the Actions pane.
  3. Compare the Physical path with the path on the error page. Correct drive letters, folder names and spelling.
  4. In File Explorer, confirm that the directory exists. If the request names a file, confirm that the file exists at that exact location.
  5. If the site uses a virtual directory, follow its mapping and check the target rather than only the parent site.

A path on a local disk must be present on that server. For a UNC share, verify that the server can reach the share and that the identity used by the application pool has read access. A path that exists for your interactive account may still be inaccessible to IIS.

2. Check the requested resource and configured executable

Compare the requested URL with the files deployed under the physical directory. A deployment can leave the site pointing at an old folder, or a handler can still reference an executable that was renamed or removed. Check handler mappings and any process-path setting for the application. Restore the missing file from the same, known-good build or correct the setting to the location actually deployed; do not create an empty file merely to satisfy the path.

For a virtual directory or share, test the path while signed in with an account that represents the application-pool identity, or use the server’s normal access-check procedure. Confirm folder traversal and read permission on every parent directory. Keep permissions as narrow as the application requires instead of granting broad write or administrator access.

3. Inspect Web.config safely

Open the Web.config named on the error page in an editor that preserves XML. Make a backup before editing. Look for:

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Malformed XML, including an unclosed element, invalid nesting or a broken attribute quote.
  • A stale physical path, executable path or include/reference to a file no longer deployed.
  • An unrecognized configuration section that belongs to an IIS extension not installed on this server.
  • A module or handler entry whose DLL or executable no longer exists.
  • Duplicate entries introduced by merging deployment files.
  • A section locked at a parent level, which cannot be overridden in this application’s Web.config.

If the page identifies a line and column, start there but read the surrounding section. XML can be syntactically valid while still containing an invalid module name or path. Remove an obsolete entry only when you have confirmed that the application no longer needs it; otherwise install or restore the component it references.

4. Check inherited server configuration

When the error names a server-level or inherited setting, inspect C:WindowsSystem32inetsrvConfigApplicationHost.config with a backup available. Check the site definition, application path, handler and module collections, section declarations and any path that points to a DLL or executable. Do not make broad edits while a site is serving production traffic. A malformed or partially edited ApplicationHost.config can affect every site on the server.

If the server configuration is under change control, use that process to compare the current file with the last known-good version. A configuration backup or a redeployment is safer than manually reconstructing a large section.

5. Validate configuration with IIS tools

Run the following command from an elevated Command Prompt on the IIS server:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

%windir%system32inetsrvappcmd list config /section:system.webServer

The command asks IIS to read and display the system.webServer configuration. Parse errors, invalid sections and some inheritance problems will be reported without requiring a browser request. You can also open the affected site in IIS Manager and use Configuration Editor to inspect the relevant section and its inherited values.

Use the tool output together with the error page. If configuration parses successfully but the physical path is absent, stay on the content-lookup branch. If parsing fails, fix the named configuration element before testing application files.

6. Repair missing modules and handler references

A module or handler entry can produce a file-not-found or 500.19 failure when its extension is not installed or its DLL was removed. Identify the exact module name and file path in Web.config or ApplicationHost.config. Then choose one of these narrow repairs:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Sale
Learn Windows IIS in a Month of Lunches
  • Used Book in Good Condition
  • Install the IIS extension required by the application, using the version and architecture supported by that application.
  • Restore the missing DLL from the verified deployment package if the module is a private application component.
  • Correct a path that changed during deployment.
  • Remove an obsolete module or handler entry only after confirming that no route depends on it.

Do not copy a random DLL from another server. A file with the right name but the wrong version or architecture can turn a clear configuration error into a loading or process crash.

7. Follow the ASP.NET Core branch when applicable

ASP.NET Core applications hosted by IIS have an additional process-start dependency. Check the published output directory and verify that the executable named by the hosting configuration is present. Confirm that the process path points to that executable, not to a developer machine location or an old release directory.

Review antivirus or endpoint-security quarantine history. Microsoft documented a 0x80070002 startup case in which antivirus scanning prevented the application process from being found or started. If a legitimate published file was quarantined, follow your organization’s security process to verify the file and restore or redeploy it. Do not disable protection indiscriminately.

Finally, verify that the .NET Hosting Bundle for IIS matching the application’s target runtime is installed. A missing or mismatched Hosting Bundle can leave the IIS integration components unavailable even when the application files are present. Install the appropriate bundle, then confirm the installation and retest the site.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

8. Correct permissions without over-permissioning

For a local folder, grant the application-pool identity the read access required to traverse the directory and read the application files. For a UNC share, permissions must allow the identity to reach both the share and the underlying file system. Recheck inherited deny entries and parent-folder access if the directory exists but IIS still reports it as unavailable.

Use the identity shown in the site’s Application Pool settings. Testing only as an administrator can hide an access problem because your account has rights that the worker process does not. Avoid granting full control or write access unless the application’s documented design requires it.

9. Apply the smallest repair and retest

After identifying the cause, make one focused change: correct the path, restore the file, install the required module, fix the XML, remove the confirmed obsolete entry, repair permissions or install the Hosting Bundle. Save the backup and note what changed.

Request the same URL again and compare the new error page, IIS logs and application logs with the original. If configuration is now valid, restart the affected site or application pool only after the edit has been saved and validated. A restart cannot repair a missing file or malformed XML; it only reloads the state after a valid repair.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

10. Restore or redeploy when configuration is corrupted

If Web.config or ApplicationHost.config is damaged and the precise edit is uncertain, restore a known-good configuration backup. If the application was deployed incompletely, redeploy the complete published package, including its executable, dependent files and configuration. Preserve the failing copy and logs until you have confirmed the replacement works, so that a recurring deployment problem can be traced.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Decision table for common symptoms

What you see Most likely branch Action
Physical path on the page points to a directory that is absent Content lookup Correct Basic Settings or restore the deployed directory.
Directory exists, but the requested file does not Incomplete deployment or wrong URL Deploy the file from the verified build or correct the link/handler mapping.
Config Error cites a line, XML element or duplicate entry Configuration parsing Back up Web.config, correct the named section and validate with Appcmd or Configuration Editor.
“Unrecognized element” or a missing module name appears Missing IIS extension Install the required module or remove the obsolete declaration after confirmation.
Path is a UNC share and local tests succeed Identity or share permissions Test reachability as the application-pool identity and repair share and file-system read access.
ASP.NET Core executable is absent or quarantined Process startup Restore or redeploy the verified executable and review security-product quarantine records.
ASP.NET Core files exist but IIS integration is missing Hosting Bundle dependency Install the Hosting Bundle that matches the application’s target runtime.

What not to do

  • Do not delete Web.config or ApplicationHost.config without a backup.
  • Do not grant Everyone full control just to test a permissions theory.
  • Do not copy a module DLL from an unrelated server or change application architecture casually.
  • Do not disable antivirus protection broadly; investigate a specific, verified quarantine event.
  • Do not restart the entire server as a substitute for fixing the path or configuration.
  • Do not expose detailed errors to public users after diagnosis; return the site to an appropriate error-detail setting.

Preventing another 0x80070002 deployment failure

  • Deploy the application and its configuration as one versioned package so paths and binaries agree.
  • Validate that the published executable, module files and content directory exist before switching traffic.
  • Keep backups of Web.config and ApplicationHost.config before automated changes.
  • Record the application-pool identity and required read permissions for each site and share.
  • Include the required IIS extensions and ASP.NET Core Hosting Bundle in the server build checklist.
  • Review antivirus quarantine events as part of deployment troubleshooting.
  • Use a staging request and appcmd or Configuration Editor validation before making a production site active.

Once the exact missing path, configuration element, module or runtime dependency is corrected, IIS can proceed past the stage that generated 0x80070002. The error code itself is a precise clue, not a complete diagnosis; the physical path, module, notification and configuration text on the page identify the repair.

If you prefer an optional automated shortcut after trying the manual checks, Outbyte PC Repair can address some common Windows system and configuration issues, clean temporary and cache files, review vulnerabilities and log app crashes. It runs on Windows 11, 10, 8 and 7, offers a category-based free trial of at least two days and then requires a subscription; it complements antivirus software and cannot repair every IIS crash.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

ASP.NET CoreHTTP 500.19IISTroubleshootingWeb.configWindows Server

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.