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

HTTP错误503。业务不可用。

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

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

有人能告诉我怎么了吗?


当前回答

对我来说,解决方案是将启用32位应用程序更改为False


没有一个答案对我有用。所以我想分享我在几个小时的研究后的发现。

一直在事件日志中看到这条消息:模块DLL C:\Windows\system32\RpcProxy\RpcProxy.dll加载失败。数据就是错误。原来dll是64位的,不能加载到32位进程中。

其他回答

或者,如果当前的解决方案都不起作用,请在您的网站目录中查找一个名为app_offline.htm的文件。这基本上告诉IIS您的站点不可用,并显示此页面。

要修复它,要么删除它,要么重命名为app_offline.htm.bak。

在我的例子中,我在向一位同事演示如何使用它来暂时阻止网站流量时添加了它,然后忘记了我在我的盒子上做了这个操作。叹息。

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

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

在IIS中,进入服务器下的应用程序池,然后为您的网站找到正确的应用程序池,并单击它。在右侧的“高级设置”菜单中,在“常规”下,使“启用32位应用程序”= true。

这在某种程度上对我有用!

[2021年7月-更新] 我已经尝试了上面所有这些答案,但它不工作,然后我在程序和功能中重新安装IIS,它工作了。

我知道所有设置都没了,但还能用。(请阅读原文)

按Windows + X 选择“应用程序和功能” 选择“程序和功能” 选择“打开或关闭Windows功能” 取消选中“Internet信息服务”复选框 重启PC 重新安装(再次选中“Internet信息服务”复选框) 然后测试新的!

或者你可以:通过运行,输入“appwiz”打开“程序和功能”。cpl”,按“Enter”。

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

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

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