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

HTTP错误503。业务不可用。

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

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

有人能告诉我怎么了吗?


当前回答

您的域可能要求用于运行appool的帐户具有批量登录权限。在这种情况下,您将看到相同的错误消息。您可以通过查看事件查看器中的系统事件来判断是否存在这种情况。应该有一个事件,说明应用程序池使用的帐户有“错误的密码或没有批量登录权限”。

这就是为什么开发人员经常在他们的开发机器上使用IIS Express,因为它传递了批量登录权限问题。

其他回答

我遇到了同样的问题,发现这是由在C:\Users中创建用户配置文件的权限问题引起的。我给了ApplicationPoolIdentity C:\Users文件夹的完全权限,启动了站点,一切正常,配置文件必须已经正确创建,并且我的站点正常工作。然后我从ApplicationPoolIdentity中删除了对C:\Users的访问权。

站点不会使用ApplicationPoolIdentity在本地启动,只有当使用NetworkService: "HTTP Error 503。该服务不可用。”

我通过删除与我的应用程序目录在IIS匹配的URL预订解决了这个问题。我有一个类似的(绝对不是相同的)问题,概述在这篇文章:

503服务不可用的一个不常见的根本原因

在我的案例中,与域名相关联的应用程序池与与个别网站/应用程序相关联的应用程序池不匹配。我不知道这是怎么发生的,但一旦域名应用程序池被纠正,问题就解决了。

我也遇到了同样的问题,但这是IIS中实际站点设置的问题。

选择高级设置…为您的站点/应用程序,然后查看Enabled Protocols值。无论出于什么原因,我的站点的值是空白的,并导致以下错误:

HTTP错误503。业务不可用。

修复方法是添加http并选择OK。随后,网站又恢复了正常运行。

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

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

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