IIS错误,无法在Web服务器上启动调试

时间:2013-09-08 06:10:56

标签: asp.net visual-studio-2010 iis iis-7.5

我想在本地计算机上从IIS运行我的应用程序。我创建了虚拟目录并将应用程序添加到它,并在应用程序的属性文件夹中检查了单选按钮“使用本地IIS Web服务器”。然后我开始运行我的应用程序,但是我收到以下错误:

  

无法在webserver上启动调试。请查看常见配置错误的帮助。在调试器外部运行网页可能会提供更多信息。

     

确保服务器正常运行。通过调试验证web.config中没有语法错误。启动时不调试。您可能还想参考联机文档中的ASP.NET和ATL Server调试主题

如何摆脱此错误?

我在Windows 7和IIS 7.5上使用Visual Studio 2010。

41 个答案:

答案 0 :(得分:30)

上述问题可能有很多原因。

您需要检查一下: - Unable to Start Debugging on the Web Server

旁注: - 转到IIS并检查您正在使用的应用池是否已启动。

从命令行尝试此操作: -

cd %windir%\Microsoft.NET\Framework\v4.0.30319
aspnet_regiis.exe -i

答案 1 :(得分:23)

此问题有多种解决方案,在我的情况下,我更改了机器的密码,但忘记在该应用程序池的高级设置的流程模型标识中更改它。

后来 IISRESET 为我做了诀窍。

答案 2 :(得分:18)

我遇到此问题时只是更新,Visual Studio和IIS中的所有设置似乎都是正确的。

实际上对我有用的只是以管理员身份运行Visual Studio - 我猜想有一个权限需要在某处设置,但我不知道在哪里或哪里。

另外需要注意的是,我将所有网站配置为使用IIS中的DefaultAppPool,当时是ASP.NET V2,然后安装了.NET 4,DefaultAppPool转换为.NET4,因此没有任何网站会编译(这导致我少量的咒骂)

希望能帮到某人

答案 3 :(得分:13)

我已经看到了很多不同的解决方案。 iisreset为我做了诀窍。

只需打开提升的命令提示符并输入:

iisreset

答案 4 :(得分:9)

添加,我遇到了这个问题,并通过禁用Load User Profile选项(不确定任何副作用)来修复。这可以通过Advanced Settings找到Application Pool

enter image description here

然后这对我有用。

答案 5 :(得分:8)

就我而言,web.config(system.web - >编译)中缺少lhooq@lhooq ~/tsdl $ ocamlfind ocamlopt -cclib -lSDL2 -package tsdl -linkpkg -o min.native min.ml -verbose Effective set of compiler predicates: pkg_result,pkg_unix,pkg_bigarray,pkg_str,pkg_bytes,pkg_ctypes,pkg_ctypes.foreign.base,pkg_ctypes.foreign.unthreaded,pkg_ctypes.foreign,pkg_tsdl,autolink,native + ocamlopt.opt -o min.native -verbose -I /home/lhooq/.opam/4.04.0/lib/result -I /home/lhooq/.opam/4.04.0/lib/bytes -I /home/lhooq/.opam/4.04.0/lib/ctypes -I /home/lhooq/.opam/4.04.0/lib/tsdl /home/lhooq/.opam/4.04.0/lib/result/result.cmxa /home/lhooq/.opam/4.04.0/lib/ocaml/unix.cmxa /home/lhooq/.opam/4.04.0/lib/ocaml/bigarray.cmxa /home/lhooq/.opam/4.04.0/lib/ocaml/str.cmxa /home/lhooq/.opam/4.04.0/lib/ctypes/ctypes.cmxa /home/lhooq/.opam/4.04.0/lib/ctypes/ctypes-foreign-base.cmxa /home/lhooq/.opam/4.04.0/lib/ctypes/ctypes-foreign-unthreaded.cmxa /home/lhooq/.opam/4.04.0/lib/tsdl/tsdl.cmxa -cclib -lSDL2 min.ml + as -o 'min.o' '/tmp/camlasm9ab424.s' + as -o '/tmp/camlstartupe796c9.o' '/tmp/camlstartup4a1081.s' + gcc -o 'min.native' '-L/home/lhooq/.opam/4.04.0/lib/result' '-L/home/lhooq/.opam/4.04.0/lib/bytes' '-L/home/lhooq/.opam/4.04.0/lib/ctypes' '-L/home/lhooq/.opam/4.04.0/lib/tsdl' '-L/home/lhooq/.opam/4.04.0/lib/ocaml' '/tmp/camlstartupe796c9.o' '/home/lhooq/.opam/4.04.0/lib/ocaml/std_exit.o' 'min.o' '/home/lhooq/.opam/4.04.0/lib/tsdl/tsdl.a' '/home/lhooq/.opam/4.04.0/lib/ctypes/ctypes-foreign-unthreaded.a' '/home/lhooq/.opam/4.04.0/lib/ctypes/ctypes-foreign-base.a' '/home/lhooq/.opam/4.04.0/lib/ctypes/ctypes.a' '/home/lhooq/.opam/4.04.0/lib/ocaml/str.a' '/home/lhooq/.opam/4.04.0/lib/ocaml/bigarray.a' '/home/lhooq/.opam/4.04.0/lib/ocaml/unix.a' '/home/lhooq/.opam/4.04.0/lib/result/result.a' '/home/lhooq/.opam/4.04.0/lib/ocaml/stdlib.a' '-L/usr/local/lib' '-Wl,-rpath,/usr/local/lib' '-Wl,--enable-new-dtags' '-lSDL2' '-ltsdl' '-Wl,--no-as-needed' '-lffi' '-lctypes-foreign-base_stubs' '-Wl,--no-as-needed' '-lffi' '-lctypes_stubs' '-Wl,--no-as-needed' '-lcamlstr' '-lbigarray' '-lunix' '-lSDL2' '/home/lhooq/.opam/4.04.0/lib/ocaml/libasmrun.a' -lm -ldl lhooq@lhooq ~/tsdl $ ocamlfind ocamlopt -package tsdl -linkpkg -o min.native min.ml -verbose Effective set of compiler predicates: pkg_result,pkg_unix,pkg_bigarray,pkg_str,pkg_bytes,pkg_ctypes,pkg_ctypes.foreign.base,pkg_ctypes.foreign.unthreaded,pkg_ctypes.foreign,pkg_tsdl,autolink,native + ocamlopt.opt -o min.native -verbose -I /home/lhooq/.opam/4.04.0/lib/result -I /home/lhooq/.opam/4.04.0/lib/bytes -I /home/lhooq/.opam/4.04.0/lib/ctypes -I /home/lhooq/.opam/4.04.0/lib/tsdl /home/lhooq/.opam/4.04.0/lib/result/result.cmxa /home/lhooq/.opam/4.04.0/lib/ocaml/unix.cmxa /home/lhooq/.opam/4.04.0/lib/ocaml/bigarray.cmxa /home/lhooq/.opam/4.04.0/lib/ocaml/str.cmxa /home/lhooq/.opam/4.04.0/lib/ctypes/ctypes.cmxa /home/lhooq/.opam/4.04.0/lib/ctypes/ctypes-foreign-base.cmxa /home/lhooq/.opam/4.04.0/lib/ctypes/ctypes-foreign-unthreaded.cmxa /home/lhooq/.opam/4.04.0/lib/tsdl/tsdl.cmxa min.ml + as -o 'min.o' '/tmp/camlasm201bd8.s' + as -o '/tmp/camlstartup7113e2.o' '/tmp/camlstartup4724f2.s' + gcc -o 'min.native' '-L/home/lhooq/.opam/4.04.0/lib/result' '-L/home/lhooq/.opam/4.04.0/lib/bytes' '-L/home/lhooq/.opam/4.04.0/lib/ctypes' '-L/home/lhooq/.opam/4.04.0/lib/tsdl' '-L/home/lhooq/.opam/4.04.0/lib/ocaml' '/tmp/camlstartup7113e2.o' '/home/lhooq/.opam/4.04.0/lib/ocaml/std_exit.o' 'min.o' '/home/lhooq/.opam/4.04.0/lib/tsdl/tsdl.a' '/home/lhooq/.opam/4.04.0/lib/ctypes/ctypes-foreign-unthreaded.a' '/home/lhooq/.opam/4.04.0/lib/ctypes/ctypes-foreign-base.a' '/home/lhooq/.opam/4.04.0/lib/ctypes/ctypes.a' '/home/lhooq/.opam/4.04.0/lib/ocaml/str.a' '/home/lhooq/.opam/4.04.0/lib/ocaml/bigarray.a' '/home/lhooq/.opam/4.04.0/lib/ocaml/unix.a' '/home/lhooq/.opam/4.04.0/lib/result/result.a' '/home/lhooq/.opam/4.04.0/lib/ocaml/stdlib.a' '-L/usr/local/lib' '-Wl,-rpath,/usr/local/lib' '-Wl,--enable-new-dtags' '-lSDL2' '-ltsdl' '-Wl,--no-as-needed' '-lffi' '-lctypes-foreign-base_stubs' '-Wl,--no-as-needed' '-lffi' '-lctypes_stubs' '-Wl,--no-as-needed' '-lcamlstr' '-lbigarray' '-lunix' '/home/lhooq/.opam/4.04.0/lib/ocaml/libasmrun.a' -lm -ldl

示例:

debug="true"

答案 6 :(得分:7)

我没有在这个帖子或(可能重复的)问题here上看到这个答案。

我通过以下方式解决了问题:

  • 打开任务管理器(ctrl + alt + del)
  • 进程标签下,结束 IIS工作进程的任务(现在可能会将其列为Microsoft.IIS.Worker.Process或类似内容)(您可以如果您没有看到所有流程,则必须单击底部的更多详细信息
  • 然后转到服务标签,停止 IISADMIN 服务并重新启动它。

运行程序,希望能解决它!快乐的编码和调试! :)

答案 7 :(得分:5)

在VS崩溃之后出现了同样的问题,Rahul关于应用程序池的评论指出了我正确的方向。在我的情况下,回收应用程序池就行了(IIS管理器=>应用程序池=>右键单击有问题的ap并回收)。

答案 8 :(得分:4)

在线最佳答案是here.我尝试了第五种方法。

  1. 在VS2005或VS2008或VS2010中右键单击您的项目
  2. 点击“属性”
  3. 点击网页标签
  4. 在“服务器”下,单击“使用Visual Studio开发服务器”单选按钮
  5. 选中自动分配端口单选按钮
  6. 取消选中NTLM身份验证并启用“编辑并继续”
  7. 现在运行您的应用程序它将适合您。

答案 9 :(得分:3)

我正在使用Visual Studio 2017运行Windows 10 Professional,上面没有任何选项适用于我。

为我修复的是添加'Windows进程激活服务'

开始>打开或关闭类型转动窗口功能>确保选中“Windows Process Activation Service”

希望它有所帮助。

Screenshot

答案 10 :(得分:3)

在'开发人员命令提示符(您的可视工作室版本)'

中重置您的iis

在该命令提示符下键入iisreset&打进去。它会自动重置iis

答案 11 :(得分:2)

在我的情况下, DefaultAppPool 已停止,我编辑了高级设置并将身份的值设置为 LocalSystem < / strong>,之后我启动DefaultAppPool。

答案 12 :(得分:2)

我自己遇到了这个问题,原来我的IIS中的网站设置为使用特定网络帐户的匿名身份验证。我被迫重置该帐户的密码,因此IIS失败了,因为它使用的是旧的。一旦我使用新密码更新了网站(甚至更好,将其更改为使用网络服务),所有工作都重新开始。

答案 13 :(得分:2)

如果您在localhost上使用HTTPS,则可能是您创建了自签名证书。它们在创建它们的同一天有过期的趋势,因此您可能必须重新创建证书并将其添加到本地托管站点的绑定中。

答案 14 :(得分:1)

如果您使用的是活动目录登录,则需要检查密码和用户名。

答案 15 :(得分:1)

在我的情况下,此文件夹丢失了:

  

C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporary ASP.NET Files

添加该文件夹和必要的权限为我解决了这个问题。

答案 16 :(得分:1)

就我而言,Chrome似乎锁定了一些资源,阻止调试器附加。关闭Chrome后,我可以再次添加。

答案 17 :(得分:1)

在我的本地IIS上配置的10个站点中只有一个发出此错误,因此我感觉这与其他答案不同,这些是机器范围内的事情,例如打开或关闭Windows功能,或者以管理员身份运行VS2015(其他9个站点在同一个VS中运行正常)。

我的具体错误是:

  

无法在网络服务器上开始调试。操作不受支持。未知错误:0x80004005

问题原来是具有重写HTTP的URL重写规则的Web配置 - &gt; HTTPS。评论这个解决了问题

TL; DR - 尝试禁用所有web.config网址重写规则(如果有的话)(然后逐步添加它们,如果有帮助的话)

答案 18 :(得分:1)

确保您在C:\ Windows \ System32 \ drivers中的etc文件没有任何其他与您收到错误的应用程序同名的应用程序。

我有一个名为'localhost'的Hadoop沙箱,它与我的Visual Studio项目相同,后者收到了“无法启动Web服务器上的调试”错误。

删除这些行,您的项目应该开始调试。

答案 19 :(得分:1)

我编辑了解决方案文件,并将localhost更改为我的IP地址。在此之前,我在项目目录中添加了完全控制的IIS_IUSRS。我现在可以调试。

答案 20 :(得分:1)

项目属性> Web>服务器 更改本地ISS> ISS Express

Change ISS

答案 21 :(得分:1)

如果您可以检查日志,则应该能够获得错误状态和子状态。

日志通常位于%SystemDrive%\ inetpub \ logs \ LogFiles

我只需要面对一个类似的问题,看看我发现的日志:

2018-11-12 10:09:22 ::1 DEBUG /PPD/debugattach.aspx - 80 - ::1 - - 403 4 5 0

这里的状态为403,子状态为4,此表https://support.microsoft.com/en-ca/help/943891/the-http-status-code-in-iis-7-0-iis-7-5-and-iis-8-0提供了解决问题的知识! 403.4实际上是SSL必需的,一旦我将Visual Studio中的项目URL从http更改为https(项目属性-> Web->服务器->项目URL),问题就消失了。

我描述了我的修复程序,只是为了阐明解决问题的步骤,阅读所有答案,而不仅仅是“一旦我更改了项目URL ...”,然后按照日志!

祝你好运!

答案 22 :(得分:1)

转到搜索&gt;键入services.msc并确保ASP.Net State Service正在运行。

答案 23 :(得分:1)

  

按照我的步骤:

  1. 打开您的网络配置文件。
  2. 查看“staticContent”标记
  3. 删除或推荐不需要的设置标记ex: - &gt; &LT; mimeMap fileExtension =“。woff”mimeType =“application / x-font-woff”/&gt;

答案 24 :(得分:1)

检查物理路径。

就我而言,我是错误地更改了它。

在IIS中,单击您的网站,然后转到“基本设置...”。

检查路径,然后检查凭据。如果需要,输入新的凭据。

enter image description here

要更改路径,可以转到Visual Studio,然后重新创建虚拟目录:

enter image description here

如果要求重新映射,请单击“是”。

答案 25 :(得分:1)

您是否在计算机上使用或重装了IIS Rewrite?我在我的机器上遇到了类似的问题,但为了绕过它,我将web.config作为VS中的当前页面打开并按f5。然后我必须导航到要调试的页面。它似乎对我有用。

答案 26 :(得分:0)

这可能是错误的Windows用户凭据的情况。

在导入需要配置Windows用户名和密码的现有IIS项目之后,此问题经常发生。

要解决此问题,请确保将应用程序池应用程序,网站和网站应用程序都配置为使用计算机的凭据。

  1. 在IIS服务器节点上,选择pool-application / app / website,然后选择高级设置
  2. 检查let startDate = Date() - 7 * 24 * 60 * 60 let endDate = Date() let predicate = HKQuery.predicateForSamples(withStart: startDate, end: endDate, options: []) 的值是否正确。如果没有,请修复它。

enter image description here

  1. 在IIS服务器节点上,选择pool-application / app / website,然后选择基本设置
  2. 单击“测试设置”,然后验证凭据是否正确。

enter image description here

答案 27 :(得分:0)

我在这里进行了所有尝试,最后发现这是我的web.config中的设置。我删除了该部分,它运行良好;稍后,我将回过头来进行故障排除。

* 编辑:由于App_Offline.htm文件存在问题以及错误的配置方式,我删除了statusCode =“ 503”。我删除了下面的行(本地不需要),并且一切正常。

<remove statusCode="503"/>

答案 28 :(得分:0)

更改网络密码后,这总是发生在我身上。
打开IIS >>选择应用程序池>>高级设置>>应用程序池标识>>设置凭据>> 设置用户名和 new 密码。

还:

  1. 确保应用程序池的状态为“已启动”。
  2. 通过IIS管理器重新启动IIS,或以管理员身份打开cmd并运行命令iisreset

enter image description here

答案 29 :(得分:0)

针对VS Professional 2019上存在相同问题的人。 我安装了Xamarin捆绑包,然后此IIS错误开始。 我尝试了上面所有的解决方案,没有任何运气。 我要解决的问题是:

  • 从Visual Studio安装程序中检查开发时间Web和云的IIS支持-ASP.NET和Web开发。 enter image description here

  • 重新启动IIS

  • 开放式解决方案-已修复问题。

答案 30 :(得分:0)

只需加上我的2美分即可。

最近我为另一个项目安装了docker,这导致在IIS Express上运行的项目生成错误“指定的端口正在使用”。为了解决这个问题,我做了几件事,但是我执行了以下命令:

netsh http add iplisten ipaddress=::

此命令会破坏在IIS Local上运行的站点,因此,如果执行此命令,则可以通过执行以下命令来使IIS Local站点重新工作,以撤消上一个命令:

netsh http delete iplisten ipaddress=::

答案 31 :(得分:0)

检查您的Web配置,如果有问题,则可能会出现此错误。我在网络配置中使用HTTP到HTTPS重定向,但该应用程序设置为以http启动。

要修复(本地IIS):

  1. 在IIS中为您的应用程序配置https绑定。
  2. 右键单击Web项目,然后单击“属性”>“ Web”。在“服务器”下,将URL设置为您的https URL。

答案 32 :(得分:0)

在@MiscellaneousUser的答案的基础上,在我的案例中,正是我启用了HSTS,以强制网站使用HTTPS而不是HTTP。

要解决此问题,我不得不在applicationHost.config文件中禁用HSTS,该文件通常在此处找到: C:\ Windows \ System32 \ inetsrv \ Config \ applicationHost.config

文件的相关行是这样-我刚刚将启用从true更改为false:

<hsts enabled="false" max-age="31536000" includeSubDomains="true" redirectHttpToHttps="true" />

很明显,您需要考虑禁用HSTS的安全性影响。就我而言,这是我的开发PC,因此我只打开了HSTS来模拟生产过程。

答案 33 :(得分:0)

我在这里回答了所有问题,但没有任何效果。我的情况是IIS,并在一周前创建了一个自签名证书。一周工作正常,突然我开始购买403了。最后,我关闭了Visual Studio,进入IIS并删除了虚拟目录,回到Visual Studio,并从项目Web设置创建了一个虚拟目录,然后一切又开始正常工作。

自认证的有效期为一年,因此我不确定为什么它停止工作,但这使我重新开始。

答案 34 :(得分:0)

就我而言,此问题在我的Windows 10更新到最新版本后发生了

-我已经尝试了以上大多数解决方案,但没有帮助我

-我还检查了事件查看器以查看发生了什么错误。

这是与iis有关的错误,但经过大量搜索后仍未在互联网上找到任何解决方案

  

由于配置问题,无法加载模块DLL'C:\ WINDOWS \ System32 \ inetsrv \ cgi.dll'。当前配置仅支持加载为AMD64处理器体系结构构建的映像。数据字段包含错误号。要了解有关此问题的更多信息,包括如何解决这种处理器体系结构不匹配错误,请参阅http://go.microsoft.com/fwlink/?LinkId=29349

enter image description here

我解决此问题的方法是将启用32位应用程序的值更改为 True

通过右键单击 IIS管理器中的 DefaultAppPool ,然后选择高级设置

enter image description here

答案 35 :(得分:0)

使用 Microsoft Web Platform Installer 安装IIS ASP.NET 4.5

enter image description here

在这里找到解决方案:

答案 36 :(得分:0)

感谢所有答案,但没有一个对我有用。虽然他们中的一些人给了我一些关于需要运行哪些服务和东西的想法,以便能够开启&#34;再次调试我的网络应用程序:

  1. 确保ASP.Net在IIS中正确注册并运行。要注册它,请按照@Rahul Tripathi说明进行搜索&gt;键入services.msc并确保ASP.Net State Service正在运行。
  2. 正如@Morvael建议的那样,始终以管理模式运行你的VS.
  3. 检查您的网络应用程序所在的应用程序池是否已启动。
  4. 确保IIS服务器本身正在运行(这解决了我的问题)
  5. 我仍然无法弄清楚我的IIS停止的原因是什么。昨天工作正常,今天不行。无论如何,我希望这个迷你清单可以帮助别人。干杯!

答案 37 :(得分:0)

其他解决方案都不适合我。我使用以下命令解决了这个问题。

对于32位机器:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

<div class="popr" data-id="1">Feugait nostrud</div>

<div class="popr-box" data-box-id="1">
<a href="#"><div class="popr-item">Feugait delenit</div></a>
<a href="#"><div class="popr-item">Vero dolor et</div></a>
<a href="#"><div class="popr-item">Exerci ipsum</div></a>
</div>

对于64位机器:

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319>aspnet_regiis –i

问题是因为未正确安装web.config文件。

答案 38 :(得分:0)

我解决了这个问题。就我而言,我的应用程序池已停止。稍微谷歌后,我发现应用程序池在某些用户身份下运行,并且该用户的密码已更改。 更新密码后,它开始正常工作。

答案 39 :(得分:0)

我有同样的问题。问题是我已经安装了Framework 4,而我已经安装了Framework 4.5 因此,如果没有ISAPI 4.0,就无法实现MIME类型ASPX。

要对其进行排序,我可以首先卸载4.5然后再添加4.0,这会造成麻烦,或者手动将其添加到IIS根目录中的ISAPI限制和ISAPI过滤器中。 我需要抓住位于C:\ Windows \ Microsoft.NET \ Framework \和C:\ Windows \ Microsoft.NET \ Framework64 \

中的aspnet_filter.dll和aspnet_isapi.dll

添加这些文件后,一切都会好的。

答案 40 :(得分:0)

我遇到过这个问题,然后我发现我必须以管理员身份运行Visual Studio才能调试项目。

希望它有所帮助!