一般来说,我对设置web服务器真的很陌生。我已经在Windows 8上安装了iis8,我正在尝试在本地建立一个小网站,同时进行一些开发。在IIS中,我选择添加站点,给出一个名称,指向我有index.html文件的位置(我尝试过不同的位置,最新的位置在c:\inetpub\wwwroot\test -文件夹中),否则使用所有默认设置。但是,当我尝试浏览到localhost时,我得到

HTTP错误503。业务不可用。

我已经验证了池已经启动,并且在目标文件夹上赋予了IIS_IUSRS完全控制

我到处搜索,但没有找到任何解决我的问题的东西,在EventLog或C:\Windows\System32\LogFiles\HTTPERR文件夹中没有任何有用的东西

有人能告诉我怎么了吗?


当前回答

当我在开发机器上清理我的IIS时,我遇到了这个问题,我不知何故为我实际开发web的子文件夹创建了一个虚拟文件夹,我无法清除,并产生冲突。

我必须用

C:\Windows\System32\inetsrv\appcmd.exe list vdir

然后逐个删除问题虚拟目录使用

C:\Windows\System32\inetsrv\appcmd.exe delete app /app.name:"Default Web Site"/{name of virtual directory}

其他回答

检查应用程序各自的应用程序框架池-它可能被停止。如果是,启动后再检查。

如果您仍然遇到问题,还可以检查事件查看器以查找错误的原因,以便进行更多故障排除。

我得到这个错误时,我安装Skype。因为我的网站使用端口80和Skype使用相同的端口也。

请看这个。

我在一个使用Kentico作为卫星CMS的. net MVC应用程序中得到了这个错误。问题是,我的应用程序所在的URL需要一个适当的许可。它基本上停止了应用程序,导致IIS只返回这个503 -服务不可用的消息。我最终在Kentico的事件日志中找到了错误细节(作为警告)。您可以在Kentico的客户端门户网站(https://client.kentico.com/)中创建新的许可证或查找许可证详细信息。

检查事件查看器- Windows -应用程序。如果在IIS-W3SVC-WP中出现红色错误行,并且消息类似于模块DLL C:\Windows\system32\inetsrv\rewrite.dll加载失败。数据就是错误。那么你就错过了一些Windows安装程序的功能。

在Windows Server 2012中,进入服务器管理器、添加角色和功能、Web服务器(IIS)并添加匹配的功能。通常,大多数应用程序开发部分都已安装。下面是IIS特性及其相关DLL的完整列表,以帮助诊断。

经过几次迭代之后,我在上面关于“重写。dll”的错误消息上结束。这导致直接下载和安装微软URL重写工具。最后,所有的网站都活了过来。

其他答案都可以。但就我而言,我使用的是一个Windows机器,它已经在运行一些旧的IIS、IISExpress或其他网站。发生的事情是url acl在系统中以某种方式保留。你可能想检查一下这个。

下面是转储所有URL acl的console命令:

netsh http show urlacl

检查这里返回的内容,如果有任何内容与您正在测试的url匹配,下面是删除一个url acl的命令(例如):

netsh http delete urlacl url=http://localhost:2018/

(小心注意你在这里所做的事情,以防它与原始问题无关)