以下涉及的功能若无法在IIS7找到,请在服务器管理器-角色-角色服务中检查是否已安装。
限制带宽使用
选择某个站点,在右边的操作界面里,找到“配置”,然后点击下面的“限制”。可以看到,不仅能限制IIS连接数,还能限制此站点所允许使用的带宽:
此功能用于应对单站点DDOS攻击时,可以将对服务器的影响降至最低。
IIS6只有限制连接数的功能。
失败请求跟踪规则
相信大家都有遇到过这样的问题:网站一会儿能访问,一会儿不能访问。解决方案不外乎两种:一直跟着,直到问题出现(烦...);或者一行一行地去翻日志(累...)。IIS7给了我们第三种解决方案,这就是失败请求跟踪。针对特定网站设置失败请求跟踪规则,可以让IIS生成该网站无法访问的日志,并单独保存在一个特定的目录下,供管理员查看。设置方法:
选择某个站点,在右边的操作界面里,找到“配置”,然后点击下面的“失败请求跟踪”:
勾选启用,并设置日志文件的保存路径。下面的数字表示跟踪的次数(跟踪一次会生成一个日志文件)。然后进入失败请求跟踪规则的设置界面,单击添加,安照向导一步一步设置即可。
生成的日志文件为.xml格式,可通过浏览器查看。
IIS6没有此功能。
压缩
IIS7中的压缩功能包含静态内容压缩和动态内容压缩,是指先将页面内容压缩后再返回给浏览器(当浏览器发起GET请求时)。启用此功能,可以节省带宽,提高访问速度(相当不错的功能...)。只是动态内容压缩会加大系统开销,不建议使用,静态内容压缩是默认开启的。
IIS6没有此功能。
Dynamic IP Restrictions
动态IP限制,一个类似DDOS防火墙的功能!进入Dynamic IP Restrictions设置界面,可以看到,不仅针对并发连接数进行限制,还可以针对一段时间内,某IP的访问次数进行限制:
而IIS6只能针对具体的IP(段)进行限制。
ApplicationPoolIdentity
IIS7会为每个程序池单独创建一个账户,用来做程序池的标识。此类账户属于系统内置账户,在计算机用户管理界面中不可见,统称为ApplicationPoolIdentity:
虽然看起来都是ApplicationPoolIdentity,但实际上分属不同账户(一个程序池对应一个账户)。
在进行NTFS授权时,可通过“IIS AppPool\应用程序池名”进行使用:
出于对IIS6兼容的考虑,我们可以手工将程序池标识为LocalService,LocalSystem,NetWorkService或者具体的某个账户。
IIS6不存在此类账户。
appcmd.exe
IIS7提供了一个通用命令行管理工具appcmd.exe,用于在命令行(脚本)中实现对IIS的一切操作,(包括站点管理、FTP管理、应用程序池管理,虚拟目录管理等)。此工具位于C:\Windows\System32\inetsrv,具体用法请查看帮助文档:
IIS6虽然也提供了实现类似功能的一系列vbs(iisweb.vbs、IIsFtp.vbs、iisapp.vbs等),但此类脚本隶属Wscript.Shell,而Wscript.Shell通常会被禁用(出于安全的考虑)...
appcmd.exe显然没有这方面的问题。