一、服务状态检查与启动
当IIS网站无法访问时,首先需要验证基础服务状态:
- 打开Windows服务管理器(services.msc),检查以下服务的运行状态:
- World Wide Web Publishing Service
- IIS Admin Service
- 通过任务管理器查看w3wp.exe进程是否正常运行
- 使用命令提示符执行
iisreset
尝试重启服务
若服务未启动,需检查事件查看器中的错误日志,确认是否因权限不足或依赖服务未启动导致故障
二、配置错误排查方法
配置错误常表现为特定页面无法加载或返回500错误:
- 网站物理路径权限设置不当(需赋予IIS_IUSRS读取权限)
- 应用程序池.NET版本不匹配
- 未启用ASP.NET等必需组件
- 默认文档未正确配置
建议使用IIS管理器的”配置编辑器”逐项检查applicationHost.config文件设置,重点关注httpErrors和asp配置节
三、端口冲突解决方案
通过以下步骤诊断和解决端口冲突:
- 执行
netstat -ano | findstr :80
查找占用端口的进程ID - 在IIS管理器中修改网站绑定端口(建议测试使用8080等非常用端口)
- 检查防火墙规则是否允许新端口通信
对于需要固定80端口的场景,可使用netsh http add iplisten
命令保留特定IP的端口使用权
通过分层排查法可快速定位IIS访问故障:优先验证服务状态,其次审查配置参数,最后处理网络层冲突。建议定期检查应用程序池运行状态,并为不同站点配置独立应用程序池以隔离故障