Free tools Windows power users keep installed
One-click scans. No signup required.
Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
0x800700 is not a complete IIS error code. It is a prefix; the final HRESULT digits identify the actual failure. On the IIS error page, record the full code (for example, 0x80070005), HTTP status, configuration-file path, physical path, module, and notification before changing anything. For HTTP 500.19, the usual branches are malformed XML or an unrecognized section (0x8007000d), denied read access (0x80070005), an invalid or unreadable path (0x80070003), or a missing file/site entry (0x80070002). ASP.NET Core applications can also fail at startup when the required Hosting Bundle, shared framework, or processor architecture is missing. Use the matching section below rather than applying broad permission or configuration changes blindly.
What does 0x800700 mean in IIS?
The text 0x800700 is a shared hexadecimal prefix used by Windows HRESULT values. The suffix is the useful part. For example, 0x80070005 maps to access denied, while 0x8007000d indicates invalid data. IIS normally displays the complete HRESULT on a detailed error page, together with an HTTP status such as 500.19, a configuration file, line number, module, and notification.
As an Amazon Associate I earn from qualifying purchases.
Recommended Free Tools
Do not choose a fix from the prefix alone. A 500.19 page that names ApplicationHost.config requires a different investigation from a 502.5 page generated while an ASP.NET Core process is starting. The requested URL and the named path also tell you whether the problem is in IIS configuration, a site folder, a network share, or the application itself.
Capture these details first
- The complete HRESULT, including all digits after
0x800700. - The HTTP status, such as 500.19, 500.0, or 502.5.
- The exact configuration file and line number shown by IIS.
- The physical path, virtual directory, URL, module, and notification.
- Whether the path is local or a UNC share such as
\servershare. - Whether the site is classic IIS content, an ASP.NET Core deployment, or a certificate-enrollment operation.
What should I do before editing IIS configuration?
Make one controlled change at a time and preserve a rollback copy. A damaged global configuration can take every site on the server offline, so the first step is evidence collection rather than permission changes.
Popular on Amazon
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
- Open the IIS error page and copy the complete HRESULT, status, path, module, notification, and line number into your incident notes.
- Back up the named
Web.config. If the page names the global file, back up%windir%system32inetsrvconfigApplicationHost.configas well. Keep the original outside the web root. - Open Event Viewer and go to Windows Logs → Application. Filter or inspect events from WAS, IIS-W3SVC, and the ASP.NET Core Module around the failure time.
- Check whether the error began after a deployment, a module installation, a site rename, an identity change, or a certificate operation. That timing determines which branch is most plausible.
- Reproduce the request once and save the URL and timestamp. Avoid repeatedly refreshing a failing application while you make unrelated edits.
How do I fix HTTP 500.19 with 0x8007000d?
0x8007000d on HTTP 500.19 means IIS cannot use the configuration data. The common causes are malformed XML in Web.config or ApplicationHost.config, an unrecognized section, a duplicate entry, or a section supplied by a module that is not installed.
Check the line and XML structure
- Open the exact file and line reported by IIS. Look for a missing closing tag, mismatched nesting, an unescaped ampersand, duplicate attributes, or invalid quotation marks.
- Compare the surrounding element with the schema expected by the installed IIS version. A section copied from another server may not exist on this server.
- Validate the file after saving, then request the same URL. Do not edit several sections at once; the next error may simply be the first one IIS reaches after the original is corrected.
Handle unrecognized sections and modules
A section such as <rewrite> is unrecognized when its supporting IIS module is absent or not registered. Install the required module using your organization’s approved package, or remove the section only if the application does not need that feature. Back up the file before removal. Do not copy a module DLL into the web directory and assume that IIS will register it.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Validate with IIS tools
Run an elevated Command Prompt and use %windir%system32inetsrvappcmd list config /section:system.webServer. This asks IIS to parse the effective configuration and often identifies the offending section more clearly than a browser page. IIS Configuration Editor provides the same view through the management interface. If validation fails before the site loads, fix the named global or site-level file first.
How do I fix HTTP 500.19 with 0x80070005 access denied?
0x80070005 is an access-control branch. IIS or the worker process cannot read a configuration file, application directory, virtual directory, or UNC share with the identity being used. The correct permission depends on the path named in the error.
Also popular on Amazon
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
For local files and folders
- Right-click the named file or folder, choose Properties → Security, and identify the account that must read it. IIS commonly uses the local
IIS_IUSRSgroup, while an application pool can run under a specific virtual account or service account. - Grant the minimum required Read and Read & execute permissions to the appropriate principal. Apply inheritance to the application directory and its configuration file when the site is intended to inherit permissions.
- Check parent folders as well. A read permission on
Web.configdoes not help if the worker process cannot traverse one of the directories above it. - Recycle the affected application pool and test the same URL. If the error changes to a different code, record that result; it identifies the next blocked resource.
Do not grant Full control to Everyone, anonymous users, or a broad administrator group merely to make the page load. Excessive ACLs can expose application secrets and do not solve a wrong identity or a network-share authentication problem.
For UNC paths and pass-through authentication
When the physical path or virtual directory points to \servershare, local NTFS permissions are only half of the check. The account used by the application pool must authenticate to the remote server and have share and NTFS read permission there. Configure the virtual directory or application pool with a domain or service account that is authorized on the file server, or correct the pass-through credentials. A local IIS_IUSRS grant on the web server cannot by itself authorize access to a remote machine.
For configuration files
If IIS names ApplicationHost.config or a site-level Web.config, verify that the relevant IIS service identity can read the file and its containing directories. Check for an inherited deny entry before adding an allow entry. Never unlock sections or rewrite ACLs until you have confirmed the exact path shown on the error page.
How do I fix HTTP 500.19 with 0x80070003?
0x80070003 usually means IIS cannot find or read the configured path. Verify the physical directory before changing application code or binaries.
Also popular on Amazon
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
- In IIS Manager, open Sites, select the site, choose Basic Settings, and confirm that the physical path is the intended directory.
- Check that the directory exists on the server and that its spelling, drive letter, and casing match the deployment. A mapped drive visible to an administrator may not exist for a service identity; use a local path or a properly authenticated UNC path.
- Confirm that the directory contains the expected
Web.config, or remove a stale configuration reference if the application should inherit settings from its parent. - Test read and traverse permissions for the application-pool identity, then recycle the pool and retry.
If the path exists and ACLs look correct, use Process Monitor to trace file-system access or IIS Failed Request Tracing to identify the exact open operation that fails. Filter the trace to the worker process and the named directory instead of collecting an unrestricted system trace.
How do I fix 0x80070002 when IIS cannot find a site?
0x80070002 is the Windows ERROR_FILE_NOT_FOUND value. In IIS site lookup, it can mean that the configuration has no site with the requested site ID or name. This is a configuration lookup problem, not proof that an application DLL is missing.
- Open IIS Manager and confirm that the site exists under Sites, is started, and has the expected bindings.
- Compare the requested host name, port, protocol, and site ID with the values configured for that site. A typo in a deployment script or a stale binding can send the request to a non-existent entry.
- Check the effective configuration with
%windir%system32inetsrvappcmd list site. If the expected site is absent, restore or recreate the site entry from a known-good configuration backup. - Only after the site resolves should you investigate application files. Changing binaries cannot correct a missing site definition.
How do I troubleshoot ASP.NET Core IIS startup errors related to 0x800700?
ASP.NET Core failures often appear as HTTP 500.0 or 502.5 rather than 500.19. The worker process fails before the app starts when the required shared framework is not installed, the ASP.NET Core Module installation is damaged, or the published app’s processor architecture does not match the IIS worker process.
Check the installed runtime and Hosting Bundle
- Determine the target framework recorded by the application, such as the required .NET shared framework and major version.
- On the IIS server, verify that the matching runtime and ASP.NET Core Hosting Bundle are installed. A newer unrelated runtime does not necessarily satisfy an application targeting a different major version.
- If the target framework cannot be installed, retarget and republish the application for an installed version, or publish it as self-contained so the required runtime is deployed with the app.
- If the Hosting Bundle was installed but the module still fails, repair the Hosting Bundle installation, restart IIS services as directed by your change process, and reproduce the request.
Align processor architecture
A framework-dependent deployment compiled for one architecture can fail when the application pool runs under an incompatible architecture. Check the published output and the pool’s Enable 32-Bit Applications setting. Republish for the worker process architecture or use a compatible deployment; do not alternate bitness settings randomly because that can hide the original mismatch.
Also popular on Amazon
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
Read the startup evidence
Inspect Event Viewer → Windows Logs → Application for ASP.NET Core Module entries and enable stdout logging temporarily in the site’s configuration when the module documentation calls for it. Store stdout logs outside a publicly served directory, monitor their size, and disable the setting after diagnosis. The log should identify a missing framework, a process launch failure, or an application exception that IIS itself cannot explain.
What if 0x80070005 appears while completing a certificate request?
A certificate-enrollment error is a separate access-denied branch. One documented cause is applying the same certificate response a second time. Verify whether the response was already applied before attempting another installation.
- Confirm the certificate response, request, and private key belong to this server and have not already been completed.
- Check permissions on
C:ProgramDataMicrosoftCryptoRSAMachineKeys. The account performing the operation must be able to access the relevant private-key container. - Use the certificate manager and the issuing authority’s records to determine whether a new request is actually required. Do not delete key containers or grant broad permissions as a first response.
- After correcting the state or permission, retry once and record the resulting HRESULT if it changes.
How can I verify that the IIS fix worked?
Verification should demonstrate that the original request succeeds and that the underlying configuration remains valid. A browser that shows a different error is not proof of a complete fix.
- Re-run
appcmd list config /section:system.webServeror inspect the affected section in Configuration Editor. - Recycle only the affected application pool, then request the same URL with the same host header, protocol, and port.
- Confirm that the original HRESULT and HTTP status no longer appear. Record the new status, response time, and any application-level error separately.
- Review Event Viewer for new WAS, IIS-W3SVC, or ASP.NET Core Module events during the test.
- For ASP.NET Core, check the startup and stdout logs, then disable temporary stdout logging when the diagnosis is complete.
- Test a second request after the first successful one. This catches permissions or process-start issues that appear only when the worker process is recycled.
Which 0x800700 branch should I investigate first?
| Full HRESULT | Typical IIS symptom | First checks |
|---|---|---|
0x8007000d |
500.19; invalid or unrecognized configuration data | XML line, duplicate entries, unsupported sections, required module, Configuration Editor or appcmd validation |
0x80070005 |
500.19; access denied while reading configuration or content | Named file path, IIS identity, inherited ACLs, UNC share credentials, share and NTFS permissions |
0x80070003 |
500.19; configuration file or directory cannot be read | Physical path, virtual-directory target, existence of Web.config, traversal and read permissions |
0x80070002 |
Site lookup or requested entry not found | Site name or ID, bindings, site state, and appcmd list site output |
| 0x80070005 during certificate completion | Certificate response cannot be applied | Whether the response was already used and permissions on the MachineKeys directory |
| ASP.NET Core startup variant | 500.0 or 502.5; worker process does not start | Hosting Bundle and shared framework, application-pool bitness, deployment type, Event Viewer and stdout logs |
What common mistakes make IIS 0x800700 errors worse?
- Using only the prefix: Treating every
0x800700page as access denied ignores the suffix and can lead to destructive permission changes. - Editing the wrong file: A site-level
Web.configcannot fix a malformed globalApplicationHost.config, and vice versa. - Unlocking everything: Unlocking sections or removing inherited restrictions may expose settings and still leave the required module missing.
- Granting broad ACLs: Full control for Everyone masks the real identity or share problem and creates a security risk.
- Changing several variables together: If you replace the runtime, edit XML, change pool bitness, and alter permissions in one attempt, you cannot tell which change mattered.
- Leaving diagnostics enabled: ASP.NET Core stdout logs can reveal sensitive startup details and grow quickly; use them temporarily and protect the directory.
- Assuming a successful IIS page means a healthy app: Once IIS accepts the configuration, application exceptions, missing environment variables, and database failures may still produce a separate 500 response.
For an optional shortcut after you have identified the failing branch, Outbyte PC Repair can address some common Windows configuration elements, invalid redirects, shared DLL issues, temporary-file and cache cleanup, settings that contribute to CPU, RAM, or disk load, and app-crash logging. It complements an antivirus rather than replacing one; results vary, and no tool repairs every IIS or application crash. It runs on Windows 11, 10, 8, and 7, with a free trial by category for at least two days before a paid subscription.
Frequently Asked Questions
Can I fix an IIS 0x800700 error by reinstalling IIS?
Reinstalling IIS is rarely the first choice because it can remove modules, bindings, and custom configuration while leaving the underlying path or permission problem unchanged. Capture the full HRESULT and named file first, validate the configuration, and repair only the missing module, runtime, site entry, or ACL identified by the evidence.
Also popular on Amazon
- 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
- Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
- Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
- HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
- What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
Why does IIS work locally but fail when the site uses a network share?
A local administrator can access a share interactively while the IIS application-pool identity cannot authenticate to the remote server. Configure an account that has both share-level and NTFS read permission, and verify pass-through authentication rather than relying on a mapped drive or a local IIS group.
Where can I find the complete HRESULT if the browser shows only a generic 500 page?
Enable detailed errors for the local request or inspect the IIS and WAS entries in Event Viewer on the server. Reverse proxies and custom error settings may hide the detailed page from remote clients, so collect the diagnostic information directly on the IIS host and then restore the normal error-display policy.
What should I do if the error returns after every application-pool recycle?
A repeat failure after recycling usually points to a startup dependency rather than a one-time worker-process state. Check the ASP.NET Core shared framework, Hosting Bundle, pool architecture, service-account access to configuration and content, and startup logs while reproducing the failure once.
Quick Recap
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.

