检查 IIS 是否运行:,1. 打开 **Windows 服务管理器**,查找 **World Wide Web Publishing Service (W3SVC)** 状态是否为 **“正在运行”**。,2. 在 **任务管理器** 的 **“服务”** 或 **“详细信息”** 标签页中,查看相关 IIS 进程(如
w3wp.exe
)是否存在。,3. 尝试访问服务器上的网站或默认页面(如http://localhost
),看能否打开,任一方法确认即可。
检查 Internet Information Services (IIS) 是否已启动并正在运行,是网站管理、故障排查或进行开发时的常见需求,有几种可靠的方法可以实现,从简单的图形界面操作到使用命令行工具,下面详细介绍每种方法:
使用 Windows 服务管理器(图形界面 – 推荐给所有用户)
这是最直观、最不容易出错的方法,尤其适合不熟悉命令行的用户。
- 打开“服务”管理控制台:
- 按下
Win + R
键打开“运行”对话框。 - 输入
services.msc
并按回车键,或点击“确定”。
- 按下
- 查找 IIS 相关服务:
- 在打开的“服务”窗口中,滚动列表查找以下关键服务(名称可能因IIS版本和安装组件略有差异,但核心服务是
W3SVC
):- World Wide Web Publishing Service (W3SVC): 这是 IIS 的核心服务,负责管理 HTTP 请求和网站的运行。这是判断 IIS 是否运行的最关键服务。
- IIS Admin Service (IISADMIN): 管理 IIS 配置数据库并为 W3SVC 和其他服务提供管理支持,W3SVC 依赖于此服务。
- 在打开的“服务”窗口中,滚动列表查找以下关键服务(名称可能因IIS版本和安装组件略有差异,但核心服务是
- 检查服务状态:
- 找到
World Wide Web Publishing Service
。 - 查看其“状态”列:
- 如果显示 “正在运行”,则表明 IIS 的核心服务已启动,您的网站应该可以处理请求。
- 如果显示 “已停止”,则表明 IIS 未运行。
- (可选但推荐) 同时检查
IIS Admin Service
的状态,虽然 W3SVC 是核心,但 IISADMIN 停止通常也会导致 W3SVC 无法启动或运行不正常。
- 找到
- 操作(如果需要):
- 如果服务已停止,您可以右键单击该服务,然后选择“启动”来尝试启动它。
- 如果服务正在运行但您怀疑有问题,可以尝试右键单击并选择“重新启动”。
优点: 可视化,操作简单,能同时看到依赖服务状态。
缺点: 需要图形界面访问权限。
使用命令行(net
命令)
Windows 内置的 net
命令可以快速查询服务状态。
- 以管理员身份打开命令提示符或 PowerShell:
- 在 Windows 搜索栏中键入
cmd
或PowerShell
。 - 在搜索结果中右键单击“命令提示符”或“Windows PowerShell”。
- 选择 “以管理员身份运行”。这一点很重要,否则可能无法获取服务状态或执行启动/停止操作。
- 在 Windows 搜索栏中键入
- 执行查询命令:
- 在打开的命令行窗口中,输入以下命令并按回车:
net start
- 在打开的命令行窗口中,输入以下命令并按回车:
- 查看结果:
- 这个命令会列出当前系统中所有正在运行的服务。
- 滚动列表,查找
World Wide Web Publishing Service
或W3SVC
。 - 如果该服务名称出现在列表中,则表示 IIS 正在运行。
- 如果未找到,则表示 IIS 核心服务未运行。
优点: 快速,适用于脚本或远程管理。
缺点: 只显示正在运行的服务,需要管理员权限,输出列表较长需要仔细查找。
使用命令行(sc
命令 – 更精确查询)
sc
(Service Control) 命令提供了更强大的服务管理功能,可以查询特定服务的详细状态。
- 以管理员身份打开命令提示符或 PowerShell: (同上)
- 执行查询命令:
- 输入以下命令并按回车(查询 W3SVC 服务):
sc query W3SVC
- 输入以下命令并按回车(查询 W3SVC 服务):
- 解读输出结果:
- 命令执行后,会显示关于
W3SVC
服务的详细信息,关键看STATE
这一行:STATE : 4 RUNNING
: 表示服务正在运行。STATE : 1 STOPPED
: 表示服务已停止。STATE : 2 START_PENDING
/STATE : 3 STOP_PENDING
: 表示服务正在启动或停止过程中。STATE : 7 PAUSED
: 表示服务已暂停(IIS服务通常不会处于此状态)。
- 如果看到
4 RUNNING
,则 IIS 正在运行。
- 命令执行后,会显示关于
优点: 直接查询特定服务,状态信息明确详细,非常适合脚本和自动化。
缺点: 需要知道服务的准确短名称(如 W3SVC
),需要管理员权限。
使用 PowerShell(Get-Service
Cmdlet – 现代推荐)
对于运行较新版本 Windows (Windows 8/Server 2012 及以后) 的用户,PowerShell 是更强大的选择。
- 以管理员身份打开 Windows PowerShell: (同上)
- 执行查询命令:
- 输入以下命令之一并按回车:
- 查询特定服务状态:
Get-Service -Name W3SVC
- 查询所有 IIS 相关服务状态(使用通配符):
Get-Service -Name W3* ``` 或 ```powershell Get-Service -Name iis*
(注意:通配符查询可能包含非IIS服务,但核心的
W3SVC
一定会包含在内)
- 查询特定服务状态:
- 输入以下命令之一并按回车:
- 查看结果:
- 命令输出会显示服务名称 (
Name
)、显示名称 (DisplayName
) 和状态 (Status
)。 - 找到
W3SVC
或World Wide Web Publishing Service
。 - 查看其
Status
列:Running
: 服务正在运行。Stopped
: 服务已停止。
- 命令输出会显示服务名称 (
优点: 功能强大灵活,输出格式清晰易读,是现代 Windows 管理的标准工具。
缺点: 需要 PowerShell 环境,需要管理员权限获取最准确信息。
检查 IIS 管理器和访问测试页(辅助验证)
- IIS 管理器 (inetmgr):
- 运行
inetmgr
(通过Win+R
或搜索),如果能成功打开 IIS 管理器界面,通常意味着 IIS Admin Service 至少是运行的,但不一定保证 W3SVC 和您的网站也在运行,在管理器左侧连接树中,如果能看到服务器节点和您的网站,并且网站状态显示为“已启动”,则是一个更强的运行指示。
- 运行
- 访问默认网站或测试页:
- 在浏览器中尝试访问
http://localhost
或http://127.0.0.1
。 - 如果看到 IIS 的默认欢迎页面(或您部署的网站内容),则毫无疑问 IIS 正在运行并能处理请求。
- 如果连接被拒绝、超时或显示其他错误(如 HTTP 503 Service Unavailable),则表明 IIS 可能未运行、网站未启动、绑定问题或存在其他故障。注意: 此方法受防火墙、网站绑定配置、应用程序池状态等多种因素影响,不能单独作为 IIS 服务本身是否运行的唯一判断依据,但结合服务状态检查非常有用。
- 在浏览器中尝试访问
使用任务管理器(查看进程)
- 按
Ctrl + Shift + Esc
打开任务管理器。 - 切换到“详细信息”选项卡。
- 查找名为
w3wp.exe
的进程,这个进程是 IIS 的工作进程,代表正在运行的应用程序池,如果您的网站有请求正在处理,通常能看到一个或多个w3wp.exe
进程。 - 注意:
- 如果没有任何活动请求,IIS 可能会回收或关闭空闲的工作进程,所以没有
w3wp.exe
进程并不绝对意味着 IIS 服务 (W3SVC
) 停止了,只意味着当前没有工作进程在处理请求,核心服务W3SVC
可能仍在运行并等待新请求。 - 此方法更适合判断网站应用程序池是否在工作,而非直接判断 IIS 核心服务状态,核心服务
W3SVC
本身对应的进程通常是svchost.exe
,很难直接区分。
- 如果没有任何活动请求,IIS 可能会回收或关闭空闲的工作进程,所以没有
总结与建议
- 最通用可靠(图形界面): 使用 Windows 服务管理器 (
services.msc
) 检查World Wide Web Publishing Service (W3SVC)
的状态,这是最推荐给大多数用户的方法。 - 最精确可靠(命令行):
- 经典 CMD: 使用
sc query W3SVC
并检查状态是否为4 RUNNING
。 - PowerShell: 使用
Get-Service -Name W3SVC
并检查状态是否为Running
。
- 经典 CMD: 使用
- 快速检查(命令行): 使用
net start
查看运行服务列表中是否有World Wide Web Publishing Service
。 - 辅助验证: 尝试打开 IIS 管理器 (
inetmgr
) 或访问http://localhost
,结合服务状态检查,能更全面地了解情况。
重要注意事项:
- 管理员权限: 使用命令行方法(
net
,sc
,Get-Service
)启动、停止或查询某些服务详细信息时,通常需要以管理员身份运行命令提示符或 PowerShell,否则可能会收到“拒绝访问”错误或无法获取完整信息。 - 服务名称: 核心 IIS 服务的短名称通常是
W3SVC
,显示名称是World Wide Web Publishing Service
,请确保检查的是这个关键服务。 - 依赖服务:
IIS Admin Service (IISADMIN)
没有运行,W3SVC
通常也无法正常启动或运行,检查服务状态时留意依赖关系。 - 应用程序池: IIS 服务 (
W3SVC
) 运行是网站工作的基础,但具体的网站应用程序还需要其对应的应用程序池处于启动状态,如果服务已运行但网站打不开,还需检查 IIS 管理器中的应用程序池状态。
通过以上方法,您可以准确、高效地判断您的 IIS 服务器是否已启动并正在运行,对于日常管理,图形界面的服务管理器通常是最佳选择;对于自动化脚本或远程管理,命令行(特别是 sc
或 PowerShell)则更为强大。
引用说明:
- 本文所述方法基于 Microsoft Windows 操作系统内置工具(服务管理器
services.msc
、命令提示符cmd.exe
、net
命令、sc
命令)和 Windows PowerShell 的功能,这些是管理和诊断 IIS 状态的官方标准方法。 - 关于服务状态代码(如
sc query
输出的STATE
),其定义遵循 Windows 系统服务控制管理器的标准,详细信息可参考 Microsoft 官方文档:Service Status Enum (面向开发者) 或更通用的服务管理文档。 - IIS 核心服务 (
W3SVC
,IISADMIN
) 的名称和作用描述来源于 Microsoft Internet Information Services (IIS) 官方文档架构。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8892.html