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

HTTP错误503。业务不可用。

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

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

有人能告诉我怎么了吗?


当前回答

这发生在我的内部网服务器上。在浏览博客文章和Windows日志后,发现在2015年圣诞节前几天(与Windows更新有关?)我的网站应用程序池想在文件夹c:\inetpub\temp\appPools中创建一个配置文件,但访问该文件夹受到限制。这将导致应用程序池被禁用。

在为这个临时文件夹的所有人添加了完全控制后,我重新启动了Windows进程激活服务,一切都重新联机了。

如果我能更优雅一点,那么授予apppoool用户对文件夹的完全控制权就足够了,但我似乎一直不记得应用程序池名称和应用程序池用户是如何相互关联的……

其他回答

如果最近安装或更新了。net框架和/或ASP.NET,也会发生这种情况。如果你不确定最近发生了什么,如果你所有的应用都使用ASP。NET版本4,您可以在管理员模式下在命令提示符中运行以下命令来尝试重置它们。

cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319
aspnet_regiis -i

这确保安装或重新安装ASP。asp.net 4和更新现有的应用程序使用ASP。NET 4版本的应用程序池。它更新IIS元数据库中的IIS经典模式和集成模式处理程序以及脚本映射。它还重新创建了ASP。asp.net v4.0和ASP。NET v4.0经典应用程序池,并将.NET framework 4设置为DefaultAppPool和经典。NET应用程序池。

首先在事件查看器中查找,在系统或应用程序日志下。

在我的案例中,问题是没有工作进程可以为应用程序池启动,因为它的配置文件无法读取-我已经包含了一个额外的'。在它的名字后面。

如果你有IIS URL重写安装它可以做到这一点。我在Windows 10更新后遇到了一些问题。

这篇StackOverflow帖子帮助了我。

进入Windows控制面板>程序和功能> IIS URL重写模块2 >修复。

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

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

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

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

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

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