目录
- 准备工作:安装 IIS 7.5
- 基础网站配置
- 创建网站
- 绑定网站(IP、端口、域名)
- 配置网站物理路径
- 设置默认文档
- 配置目录浏览
- 高级配置与功能
- 配置应用程序池
- 设置 ASP.NET 版本
- 配置默认文档
- 配置重定向(URL 重写)
- 配置 MIME 类型
- 配置 IP 和域限制
- 配置 SSL 证书(HTTPS)
- 安全配置
- 配置身份验证(匿名、基本、Windows)
- 配置 IP 地址和域名限制
- 配置请求筛选
- 配置 URL 授权
- 性能优化
- 调整应用程序池回收设置
- 配置输出缓存
- 启用压缩
- 故障排除
- 常见错误代码(403, 404, 500 等)
- 使用 Failed Request Tracing 进行深度诊断
准备工作:安装 IIS 7.5
在配置网站之前,确保您的服务器上已安装 IIS 7.5。

- 打开服务器管理器:点击“开始” -> “管理工具” -> “服务器管理器”。
- 添加角色:在右侧的“面板中,点击“添加角色”。
- 选择角色:在“选择服务器角色”向导中,勾选 “Web 服务器 (IIS)”。
- 添加必需的功能:在弹出的“添加 Web 服务器角色功能”对话框中,点击“添加必需的功能”。
- 选择角色服务:进入“选择角色服务”页面。
- 基础 HTTP 功能:确保已勾选 ”、“默认文档”、“HTTP 重定向”。
- 应用程序开发:根据您的网站类型选择,ASP.NET 网站需要勾选 “.NET Framework”、“ASP.NET”、“ISAPI 扩展” 等。
- 安全性:可以暂时不选,后续再根据需要添加,如 “请求筛选”、“IP 和域限制”。
- 管理工具:建议勾选 “IIS 管理控制台” 和 “IIS 6 管理兼容性”(兼容性对一些旧工具或脚本很有用)。
- 安装:确认选择无误后,点击“安装”,等待安装完成。
基础网站配置
1 创建网站
-
打开 “Internet 信息服务 (IIS) 管理器”。
-
在左侧“连接”面板中,右键点击 “网站”,选择 “添加网站...”。
-
填写网站信息:
- 网站名称:为您的网站起一个易于识别的名称(如
MyCompanyWebsite)。 - 物理路径:选择您网站文件所在的文件夹路径(如
C:\inetpub\wwwroot\MyWebsite)。 - 类型:选择“网站”。
- 应用程序池:可以保持默认的
DefaultAppPool,也可以新建一个。 - 绑定:这是网站对外访问的关键设置。
- 协议:通常是
http。 - IP 地址:如果服务器有多个 IP,选择对应的 IP;否则选择
全部未分配。 - 端口:默认为
80。80端口被占用,可以修改为其他端口(如8080)。 - 主机名:如果您有域名,在此处填写(如
www.example.com),留空则通过 IP 或端口访问。
- 协议:通常是
- 网站:可以保持默认。
- 网站名称:为您的网站起一个易于识别的名称(如
-
点击 “确定”,网站创建成功。
(图片来源网络,侵删)
2 绑定网站
如果需要同时支持 HTTP 和 HTTPS,或者多个域名,可以编辑绑定。
- 在 IIS 管理器中,选中您创建的网站。
- 在右侧的“操作”面板中,点击 “绑定...”。
- 在“网站绑定”窗口中,点击 “添加...”。
- 可以添加新的绑定,
- 一个
https绑定,选择一个已安装的 SSL 证书,端口443。 - 另一个
http绑定,主机名为api.example.com,用于 API 访问。
- 一个
3 配置网站物理路径
- 选中网站,在右侧“操作”面板中点击 “基本设置...”。
- 在“编辑网站”窗口中,可以修改 “物理路径” 或 “应用程序池”。
- 如果网站文件在另一台计算机上,可以点击 “连接为...” 来配置使用哪个用户账户来访问远程共享路径。
4 设置默认文档
当用户访问网站根目录时(如 http://www.example.com/),IIS 会按顺序查找默认文档列表中的文件。
- 选中网站,在中间的“功能视图”中双击 “默认文档”。
- 在右侧点击 “添加...”,输入默认文档的名称,如
index.html,Default.aspx,index.php。 - 使用右侧的 “上移”、“下移” 按钮调整文件的优先级,IIS 会从上到下依次查找,找到第一个存在的文件就返回给用户。
5 配置目录浏览
如果希望用户在访问一个没有默认文档的目录时,能看到该目录下的文件列表,可以启用目录浏览。
- 选中网站或某个虚拟目录,在“功能视图”中双击 “目录浏览”。
- 在右侧操作面板中,点击 “启用”。
- 安全警告:在生产环境中,强烈不建议启用目录浏览,这会暴露服务器文件结构,带来安全风险。
高级配置与功能
1 配置应用程序池
应用程序池是隔离不同网站运行环境的容器,一个网站崩溃不会影响其他网站。

- 在 IIS 管理器左侧,点击 “应用程序池”。
- 右键点击一个应用程序池(如
DefaultAppPool),选择 “高级设置...”。- .NET Framework 版本:选择网站所需的 .NET 版本(如 v4.0)。
- 托管管道模式:
- 集成:推荐使用,性能更好,能更好地与 .NET Framework 集成。
- 经典:用于兼容旧版 ASP 或 ISAPI 应用程序。
- 回收:可以设置在特定时间或条件下回收工作进程,防止内存泄漏,通常保持默认即可。
2 设置 ASP.NET 版本
如果您的网站是 ASP.NET 程序,必须确保应用程序池的 .NET 版本正确。
- 如上所述,在应用程序池的“高级设置”中设置。
- 也可以直接在网站的“高级设置”中设置。
3 配置重定向
可以使用“HTTP 重定向”功能将旧域名重定向到新域名,或者将 HTTP 流量重定向到 HTTPS。
- 选中网站,在“功能视图”中双击 “HTTP 重定向”。
- 勾选 “将请求重定向到此目标”,并输入目标 URL(如
https://www.example.com/$$S$$)。$$S$$会自动保留原始 URL 的路径部分(如/about-us)。
- 勾选 “将所有请求重定向到确切的目标(而不是相对路径)”。
- 在 “重定向行为” 中,选择 “永久(301)” 或 “临时(302)”,301 对 SEO 更友好。
4 配置 MIME 类型
当服务器需要处理非标准扩展名的文件时(如 .woff2 字体文件),需要配置 MIME 类型。
- 选中网站,在“功能视图”中双击 “MIME 类型”。
- 点击右侧 “添加...”。
- 输入文件扩展名(如
.woff2)和 MIME 类型(如font/woff2)。
5 配置 IP 和域限制
可以限制特定 IP 地址或域名访问您的网站。
- 选中网站,在“功能视图”中双击 “IP 地址和域限制”。
- 点击右侧 “添加允许条目...” 或 “添加拒绝条目...”。
- 可以输入单个 IP、IP 范围或 DNS 域名。
6 配置 SSL 证书
- 安装证书:首先需要将您的 SSL 证书文件(.pfx 或 .cer)导入到服务器的“证书”中。
- 打开
mmc.exe,添加“证书”管理单元,选择“计算机账户”,在“个人”->“证书”中右键导入。
- 打开
- 绑定 HTTPS:
- 在网站的“绑定”设置中,点击 “添加...”。
- 协议选择
https,端口443。 - 在 “SSL 证书” 的下拉菜单中,选择您刚刚导入的证书。
- (可选)勾选 “需要 SSL”,强制所有连接都使用 HTTPS。
安全配置
1 配置身份验证
- 选中网站,在“功能视图”中双击 “身份验证”。
- 匿名身份验证:默认启用,它使用
IUSR账户(或应用程序池标识)访问文件,大多数网站都需要。 - ASP.NET 模拟:如果启用,ASP.NET 应用程序会使用指定的用户账户(默认是
IUSR)来访问资源,而不是应用程序池账户。 - 基本身份验证:会弹出登录窗口,密码以 Base64 编码传输,不安全,除非配合 HTTPS。
- Windows 身份验证:适用于内网环境,使用域账户登录,安全性高。
2 配置请求筛选
这是 IIS 的一个核心安全功能,用于阻止恶意请求。
- 选中网站,在“功能视图”中双击 “请求筛选”。
- 编辑功能设置:可以设置允许的最大内容长度、最大 URL 长度、最大查询字符串长度等。
- 文件扩展名:可以“拒绝”或“允许”特定的文件扩展名访问。
- 隐藏段规则:可以添加规则,阻止访问如 ,
web.config,cmd.exe等危险路径。
性能优化
1 调整应用程序池回收
频繁的应用程序池回收会导致网站短暂中断,可以根据需要调整。
- 在应用程序池的“高级设置”中,找到 “回收” 部分。
- 可以禁用基于时间的回收,或者设置在特定时间(如凌晨流量低时)回收。
2 配置输出缓存
将静态或动态页面的输出结果缓存到内存中,可以极大提高响应速度。
- 选中网站,在“功能视图”中双击 “输出缓存”。
- 点击右侧 “启用...”。
- 可以配置缓存哪些文件类型(如
.html,.aspx)以及缓存多长时间。
3 启用压缩
通过压缩响应内容(HTML, CSS, JS),可以减少数据传输量,加快页面加载速度。
- 在服务器级别(IIS 管理器根节点),双击 “压缩”。
- 勾选 “启用动态内容压缩” 和/或 “启用静态内容压缩”。
- 注意:动态压缩会消耗较多 CPU 资源,如果服务器 CPU 负载很高,请谨慎使用。
故障排除
1 常见错误代码
- 403 Forbidden:权限问题。
- 原因1:匿名用户
IUSR对网站物理路径没有读取权限。 - 原因2:网站或文件夹的“安全”选项卡中没有
IIS_IUSRS组或IUSR账户。 - 原因3:配置了 IP 限制并拒绝了你的 IP。
- 原因4:请求筛选阻止了该请求(如 HTTP 动态页被禁止)。
- 原因1:匿名用户
- 404 Not Found:文件或目录不存在。
- 原因1:URL 路径错误。
- 原因2:网站物理路径不正确。
- 原因3:默认文档列表中没有匹配的文件。
- 500 Internal Server Error:服务器内部错误。
- 原因1:应用程序代码错误(如 ASP.NET 的
Yellow Screen of Death)。 - 原因2:应用程序池崩溃或被回收。
- 原因3:Web.config 文件配置错误。
- 原因1:应用程序代码错误(如 ASP.NET 的
2 使用 Failed Request Tracing (FRT)
FRT 是 IIS 最强大的诊断工具,可以详细记录一个请求从进入到响应的整个过程,包括所有模块的执行状态。
- 启用 FRT:
- 在服务器级别,双击 “跟踪”。
- 点击 “打开功能...”,然后点击 “添加...” 创建一个“跟踪规则”。
- 设置文件名和目录。
- ”选项卡中,选择“跟踪所有请求”或按状态码筛选(如只跟踪 500 错误)。
- 在“扩展属性”选项卡中,可以勾选更多详细信息。
- 分析日志:
- 当网站出现问题时,FRT 会生成
.xml日志文件。 - 使用 “Tracerpt.exe” 命令行工具或 IIS 自带的 “Failed Request Viewer”(需要从功能中安装)来打开和分析这些日志,精确定位导致错误的模块和原因。
- 当网站出现问题时,FRT 会生成
