这里讨论安装iis服务。在IIS7.0之前,IIS是一个高度集成化的整体,要么整体提供安装,要么整体卸载,没有太多的选项提供给开发人员在安装时进行配置。在7.0之后,IIS采用了组件化设计,可以让管理员有选择的配置需要的IIS服务环境,以便Web网站的安全和其他性能。
1. IIS的安装步骤
IIS服务主要有下面几种安装方式,其中包括:
- 使用服务管理器安装IIS服务。
- 使用命令行的方式进行IIS安装。这种安装方式安装没有用户交互界面,也无法获取安装进度,但是可以内嵌在自动化脚本或者程序中在程序部署时静默安装IIS服务,需要管理员权限。
2. IIS组件列表及对应的功能
当使用图形化的方式安装IIS服务的时候可以看到可选的IIS服务组件列表主要有如下内容:
- FTP服务器、FTP服务和FTP扩展性:默认情况下占用20,21两个端口。其中20端口用于传输数据,21端口用于客户端与服务器之间传递控制数据。安装这个组件就可以在IIS上使用FTP协议在客户端与服务器端之间传输文件。IIS提供用户认证,上传/下载,获取操作日志和权限管理接口给开发人员。
- Web管理工具中的IIS6.0管理兼容性:向管理员提供一个向前管理兼容性。
- Web管理工具中的管理服务、管理脚本和工具及管理控制台:只WMSVC这个windows服务。让开发维护人员可以在同一网段内通过PC上的管理控制台管理远端的Web服务器。
- 安全性组件:主要是指配置IIS需要支持的用户验证方式,主要包括:证书验证、windows集成安全验证、基本身份验证、摘要式验证和匿名访问。
- 常见HTTP功能组件:HTTP错误功能组件(生成维护错误码对应的页面,当出现错误时将对应的页面返回给客户端。主要错误有401、403、404、405、406、412、500、501、502等),默认文档(没有明确指定资源时默认返回的资源),目录浏览,静态内容,HTTP重定向。
- 性能组件:主要是指压缩功能组件。
- 应用程序开发组件:.net extensibility 及 ASP.net等支持组件。
- 健康和诊断组件:HTTP日志记录,日志记录工具,请求监视,跟踪,自定义日志记录,ODBC日志记录。
- 管理工具:IIS管理控制台,IIS管理脚本和工具、IIS管理服务(用于集群管理)。
- IIS 6.0 管理兼容性:保证向前兼容,当有IIS6.0 之前版本的应用需要安装这个服务。
- IIS可承载Web核心:将Web Server基础功能API暴露给第三方开发者。
3. 推荐安装的IIS组件列表
这里给出典型场景下部署运行IIS需要安装的组件,具体如下:
种类 | 组件名称 | 是否需要安装 | 注释 |
---|---|---|---|
常见HTTP功能 | |||
静态内容 | 是 | ||
默认文档 | 是 | 没有明确指定资源时默认返回的资源 | |
目录浏览 | 是 | ||
HTTP错误 | 是 | ||
HTTP重定向 | 否 | ||
WebDAV发布 | 否 | ||
应用程序开发 | |||
ASP.NET | 是 | ||
.NET扩展性 | 是 | ||
ASP | 否 | 仅在网站中含有.asp页面时需要安装 | |
CGI | 否 | ||
ISAPI扩展 | 是 | ||
ISAPI筛选器 | 是 | ||
在服务器端的包含文件 | 否 | 仅在网站含有.shtml页面时安装 | |
健康和诊断 | |||
HTTP日志记录 | 是 | ||
日志记录工具 | 是 | ||
请求监视 | 是 | ||
跟踪 | 是 | ||
自定义日志记录 | 否 | ||
ODBC日志记录 | 否 | ||
安全性 | |||
基本身份验证 | 否 | ||
Windows身份验证 | 否 | 仅当使用Windows账号体系验证时安装 | |
摘要式身份验证 | 否 | ||
客户端证书映射身份验证 | 否 | 仅在用户使用用户证书验证时安装 | |
IIS客户端证书映射身份验证 | 否 | 仅在用户使用用户证书验证时安装 | |
URL授权 | 否 | ||
请求筛选 | 是 | ||
IP和域限制 | 否 | 此功能应该在三层网络设备上实现 | |
性能 | |||
静态内容压缩 | 是 | ||
动态内容压缩 | 否 | 仅在带宽有限且CPU资源充裕时启用 | |
管理工具 | |||
IIS管理控制台 | 是 | ||
IIS管理脚本和工具 | 是 | ||
管理服务 | 是 | ||
IIS6.0 管理兼容性 | |||
IIS6.0 元数据库兼容性 | 否 | ||
IIS6.0 WMI兼容性 | 否 | ||
IIS6.0 脚本工具 | 否 | ||
IIS6.0 管理控制台 | 否 | ||
FTP 服务器 | |||
FTP Service | 否 | 不推荐Web服务器上同时部署FTP | |
FTP扩展 | 否 | ||
IIS可承载Web核心 | 否 | 开放基础功能组件 |