有关 Internet 信息服务的 5 个热点问题及其解答

| 如何备份 IIS 设置 | |
| 用于对 IIS 应用程序执行压力测试的工具 | |
| 报告 Localstart.asp“正在创建中" |
问:我该如何备份 IIS 设置?
答: 备份 IIS 配置的方法有多种。在Internet 信息服务管理器控制台(也称为 IIS 插件)中所设置的属性和值都储存在 metabase.bin 文件中,这个文件默认情况下位于 C:\winnt\system32\inetsrv 目录中。在 IIS 5 中,可以使用 IIS 插件来备份元数据。如果需要进行此操作,请选择计算机图标然后单击右健。然后再选择“备份/恢复配置"。然后可以选择备份当前的元数据库设置或者恢复以前的版本。MetaEdit 2.2 中也有与此相同的选项。
如果以这种方式保存元数据库,备份将以 .md0 文件的格式储存在 C:\winnt\system32\instrv\metaback 文件夹中。执行备份时,文件将使用您指定的名称,如 Pre-Lockdown.md0。如果使用相同的文件名创建了多个备份,它们将使用数字逐渐递增的扩展名,如 Backup.md0、Backup.md1 等等。
如果元数据库严重受损,IIS 将无法启动。此时,也无法从 IIS插件或 metaedit 中执行恢复操作。如果真的发生了类似情况,您可以从 metaback 文件夹中选用最合适的 .md0(.md1 等等)元数据库备份文件来替换 metabase.bin。如果备份文件没有问题,IIS 将可以启动。
还可使用其他两种方法来制作元数据库的备份。可以简便地使用 xcopy、scopy 或任何其他复制程序来复制 metabase.bin 文件。但这时最好先停止 Internet 服务,以保证元数据库是最新的并且不在使用状态中。
最后,我们还提供了两个脚本——metaback.vbs 和 metarest.vbs,它们位于 Inetpub/IISSamples/sdk/admin(如果IIS 5 上安装了IIS SDK)文件夹中,或位于 IIS Resource Kit/Utility/ADSI Admin Scripts 文件夹(如果安装了 IIS 4 资源工具包)中。这些 .vbs 脚本使用了 ADSI 命令,它是专门为创建元数据库备份而提供的。
问:我们的 IIS 应用程序马上就可以进行部署了,我们计划对这些程序执行压力测试。我们该使用什么工具来为应用程序添加负载呢?
答:有许多工具可以用来实现这个目的。您将会发现有相当多的此类商业工具,这些工具功能完备并且十分有用。Microsoft 免费提供了 Web Application Stress Tool, 就对 Web 服务器施加负载,并检查它在一定压力下是否能够正常工作这一目的而言,这个工具在大多数情况下已经足以达到目的。最好是预先执行测试,因为在应用程序的设计过程中,问题并不会显现出来,除非在这个服务器上施加一定负载,而且您也不希望直至发布到生产服务器上,才发现问题。
Web Application Stress Tool 有几个很有用的功能,例如,可以将您指向并点击 Web 站点的过程录制为一个可回放的脚本。这样,当您远程监视服务器上的性能监视计数器时,就能同步地在一个或多个客户端上重新播放这个脚本。另外,您还可指定详细信息,如用于测试身份验证吞吐量所使用的用户帐户,以及指定请求和测试计划之间的延迟时间。
安装 Web Application Stress Tool 时,会在计算机上安装一个名为“WebTool"的服务。如果确定不再需要 Web Application Stress Tool,可以卸载它。
问:我使用的是 Window 2000 Professional,且为了开发 ASP,我安装了 IIS 5。问题是,我无法查看我的本地主机页面或是 localstart.asp。如果我这样做,就会返回一条消息指出该页面“正在创建中"。我应该从何处以及如何获得该页面!
答:每次从远程 IP 地址对默认的 Web 站点进行访问时,都应该会出现这个“正在创建中"页面。如果从本地 IP 地址访问,则应该会显示 IIS 联机文档。如果在 Internet Explorer 中访问 http://localhost,并且未安装 default.htmdefault.htm 或 default.asp,则 Web 站点将会运行 iistart.asp。IISStart.asp 将检查下面两个条件:
| • | 是否已经输入了“localhost"。 |
| • | 客户端 IP 地址与服务器端 IP 地址是否匹配。 |
在上述任意一种情况下,您都会被重定向到 localstart.asp,这将打开所需的页面。
确定您的系统上确实有这些文件,并且“文档"选项卡中调用的是 IISStart.asp。如果这些都是正确的,那么可能存在某些非常特殊的问题。为了确定这一点,可以尝试写一段如下所示的简短 .asp 页面来显示服务器变量的值:
Your local IP address is <%= Request.ServerVariables("LOCAL_ADDR")%><br>
The client IP address is <%= Request.ServerVariables("REMOTE_ADDR")%>
如果 IP 地址不相同,则表明不会调用 localstart.asp 页面。当然,您总是可以通过直接使用 http://localhost/localstart.asp 来调用它。如果没有配置默认文档,直接调用 localstart.asp 可能会出现问题。脚本将返回以下消息:
You do not currently have a default document set for your users. Any users attempting to connect to this site are currently receiving an Under Construction page.
将您的问题提交给 IIS Insider。 我们会挑选出一些问题并连同答案一起刊登在下一期的 IIS Insider 专栏中。
要获取 IIS Insider 专栏所有的问题与解答,请单击此处。
我们代表 Microsoft 公司衷心希望本文章中的信息能对您有所帮助,但是应由您自己承担使用本文所带来的风险。本文中的所有信息都“按原样"提供,对于其准确性、完整性、特殊用途的适用性、所有权和不侵权原则,并没有任何明示或暗示的保证;本著作提及的任何第三方产品和信息,Microsoft 公司都并未参与创作,也不向您推荐、支持或作出任何保证。对使用该信息而造成的任何损失,不管是直接的、间接的、特别的,还是偶然的或必然的,即使已经警告过可能会有这种损失,Microsoft 公司将不承担任何责任。