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

HTTP错误503。业务不可用。

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

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

有人能告诉我怎么了吗?


当前回答

在我的情况下,我不得不改变我的userPass的网络,因为公司的政策。所以,你需要编辑你的appool: 单击应用程序池。选择您的池,“高级设置…”转到“流程模型”,点击“身份”,点击“特定用户”,并给出新的凭据。

其他回答

这可能是因为连接到数据库的数量。我有这样的情况,所以,写了一个去构造函数和杀死db打开连接,它解决了。

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


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

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

我们的服务器在周日下午耗尽了磁盘空间,导致应用程序突然失败并返回HTTP错误502。日志是空的,所以它必须是在IIS执行任何操作之前发生的事情。

快速查看事件查看器(WIN+R > eventvwr)就会发现这个问题。

将系统和应用程序窗口的输出过滤到WAS是个好主意,因为在WAS中可能会非常冗长。

应用程序依赖于另一个被禁用的应用程序。因此,请记住,如果应用程序的一个相关进程宕机,应用程序可能会间接宕机。我们只是重新启用了. net应用程序池,我们的其他应用程序又开始正常运行了。

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

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

netsh http show urlacl

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

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

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

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

请看这个。