标题标题  显示论坛会员列表名单  搜索论坛搜索  HelpHelp
  注册注册  登入登入
ASP教学区
 DoReMe : ASP教学区
主题 话题: 第二章 安装和使用 IIS 回复发表新主题
作者
贴子内容 << Prev Topic下一个主题 >>
aleebaba
Newbie
Newbie


加入: 2004/5月/17
Online Status: Offline
回复: 29
Posted: 2004/6月/02 4:02下午 | IP记录 引用 aleebaba

Internet Information Server(IIS)是WINDOWS NT 提供的INTERNET服务的核心。 NT的光盘上已经有IIS了, 但是你必须从微软的站点 mwww.microsoft.com/iis下载最新的版本。因为在这个站点上,有最新的补丁软件来对你的IIS进行修补。 建议你在安装任何修补软件时,一定要仔细阅读安装信息。

安装过程是一个微软通常所用的向导方式。 你唯一要作的决定就是你要把软件安装在那里,和你要安装那些组件。 我们推荐你把它安装在一个尽可能大的NTFS分区内。 如果运行的话,也可以安装在DOS分区上。但是如果使用DOS分区,就会出现性能和安全性降低的危险。

 

注意

为什么微软推出怎么多的补丁软件呢? 每一种操作系统都处在持续的变化之中, 但是INTERNET使微软公司都很难跟得上这个发展。

实际上, 微软公司和UNIX公司相比,他只推出了很少的补丁软件包。 还好, 微软公司对这些更新不收费。 这些补丁软件代表了一个有性能更新,安全补丁,和操作系统的增强功能的混合物。

 

到底IIS 能干什么?

微软有大批的产品是为INTERNET连接而设计的。实际上可用的软件很多很多, 以至于你很难选择。Internet Information Server 是一个在INTERNET 上提供信息发布功能的软件。 微软公司也有为个人发布信息的工具──例如,Personal Web Server ,但是Internet Information Server微软为企业和部门发布信息而设计的。 IIS这个软件是用来运行大型的站点,例如,microsoft.com, msn.com, 和investoredge.com。

IIS现在已经是第四版了。IIS 1.0在1995,但是IIS3.0直到1996年夏天才正式推出。微软在1997年夏天推出了IIS4.0 的beta版。 在IIS4.0中,微软推出了许多新特征,这些在表2.1中列出了。

确切地说,IIS4.0使INTERNET成为了一个正规的应用程序开发环境。 许多基于IIS4.0的应用程序, 核心由C++编写,然后用VBScipts连接起来。 现在的开发者仍然使用IIS3.0介绍的老的VBScipts和HTML的混合编程,IIS4.0的这些新特征会使他们收益不少 。

 

表2.1 IIS4.0的新特征

特征
 描述
 
MMC
 Microsoft Management Console 是一个集成的服务器管理工具。 虽然他看起来是IIS4.0的一部分, 但是微软宣布他将是WINDOWS NT 5.0的一部分。
 
带宽控制
 可以对每个站点单独控制带宽。这对服务服务提供者很有好处。
 
服务器认证
 微软公司现在支持在 Secure Socket Layer(SSL)上使用X.509数字安全认证。
 
命令行管理
 IIS4.0支持命令行方式或脚本文件方式的管理。
 
调试
 第一次实现了集成的调试环境
 
HTTP1.1
 IIS4.0支持HTTP1.1的大部分标准,但不是全部的标准。 之所以缺少这些支持,是因为没有一个浏览器提供商支持所有的HTTP1.1标准。
 
Index Server 2.0
 Index Server 使你能够用SQL命令检索WINDOWS NT的文件系统。 这些搜索命令可以从脚本语言, VB, C, Java 和 Java Scripts中调用。
 
MTS 集成
 Microsoft Transaction Server 已经被称为微软的另一个OLE。 MTS per server是一个独立的软件, 集成的意思就是指开发者可以提高它的功能。 MTS有两个WEB 程序开发者值得注意的特征: 单用户程序升级到多用户程序不需要特别的改进, 即使这些事务是在多个计算机系统上发生的, 处理复杂的事务也是有可能的。
 
进程的独立性
 出错的组件不会影响所有的IIS进程, 因为每个组件都有它自己独立的内存空间。
 
应答
 服务器之间的应答信息是是作为Internet Information Server的一部分来提供的。
 
网络站点工具
 Microsoft Site Analyst 有综合的信息分析和连接服务,使用这个分析工具可以使网络管理员生成通用的报表。
 

 

IIS远远超过一般的WEB服务器平台。 在它的核心有好几个发布协议,如在表2.2中列出的。微软公司还把Microsoft Tracsation Server(MTS)加入到IIS中,虽然MTS不是IIS技术的一部分。 MTS代表了IIS的最强大的功能, 然而:可扩展性, 只取决于你的想象力和你写的增强和扩展IIS功能的插入性自己。

 

表2.2 Internet Information Server 协议

协议
 描述
 
FTP
 文件传输协议。 以目录的方式发布文件信息。 通常作为一种发布和接收文件的技术。
 
WWW
 World Wide Web 。 这个协议是大部分用户用来连接INTERNET的协议(虽然他不是唯一的)。
 
NNTP
 通常用作新闻发布。 这时一个发布新闻组的技术。 注意, 新闻组是邮件的一种派生, 不是任何一个站点所真正拥有的东西。 很多站点都可以有自己的新闻服务器,这些服务器可以点对点地相互交谈, 这样一来,在A站点发布的一条信息就可以复制到B站点上。
 
SMTP
 简单邮件传输协议,通常被称为「mail」。 对于那些使用mail作为信息传递的方式的站点, 这是一个标准的mail工具。 这个工具不包括POP(Post Office Protocol)。 流行的e_mail客户端软件(例如,Eudoa和 Microsoft Outlook)都使用POP。
 

 

下面的例子说明了为什么MTS是强大的工具。 一个电子商用站点对访问者出售礼品。在一次交易完成以前, 必须在一个单独的计算机上完成几件不同的事务。以下就是这些事务(按完成的顺序)。

在落杉基,用运行Oracle 数据库的主界面检查存货清单,看是否有足够的存货。
分配存货。
在纽约的服务部里,确认信用卡的有效性。
通过EDI向订货流水线系统提交一个完整的订货通知。
如果这些步骤中的任何一个步骤发生错误, 就要使整个处理过程的结果恢复原状。 对程序员来说,MTS不但使恢复原状的操作变得容易, 而且它还可以和银行进行远程通讯。
 

对于IIS4.0来说, 由于COM,DCOM,和MTS它被看作一种入门的软件。 COM和DCOM分别代表component object model 和distributed component object model。 COM是IIS的一种最强大的特征。 要知道为什么, 就必须了解它前面的版本。

传统的WEB服务器使用CGI(Common Gateway Interface)这样的编程语言来提供动态的内容。 一个典型的CGI程序可能就是接收到一个请求以后,查找数据库中的记录。 然后,把记录 返回给WEB服务器在网页上发布。 这样的一个CGI程序就相当于在WINDOWS NT下打开了一个DOS窗口, 先打开运行一个脚本,然后接收结果,再关闭窗口。 这种方式被称为一种非进程内的方式,这样对每一个请求就必须生成一个独立的进程。

IIS组件所创建的组件对象是在进程内操作的。 也就是说,他们只是建立一个DLL文件,并安装好,等待下一个请求的到来。 当接收到一个请求时,系统会启动一个新的线程来处理这个请求,并返回结果。

由于这些原因,CGI应用程序不使用于大型的站点,但是IIS应用程序在站点扩大时通常不会造成问题。 第28章「扩展Active Server Page」, 为你展示了如何用Visual Basic 和 和Java 来生成IIS组件。 如果你对任何一种语言都很孰,你编程就会和编写VBScripts一样容易。

Back to Top 查看 aleebaba's 资料 搜索其它贴子 aleebaba 访问 aleebaba's
 
aleebaba
Newbie
Newbie


加入: 2004/5月/17
Online Status: Offline
回复: 29
Posted: 2004/6月/02 4:03下午 | IP记录 引用 aleebaba

微软介绍了一个用于IIS4.0的新的管理工具,被称为Microsoft Management Console (MMC)。MMC是一个主机snap_ins的框架, 例如,IIS,而不是一个per se.的程序。 当微软推出NT 5.0时,将为MMC设计更多的snap_ins特征。

    MMC是用来管理IIS的,而不是用来安装IIS的。 如图2.1所示, MMC使用一个和与Explorer相似的界面, 他是用树状控制结构来完成操作。他没有象控制面板和Internet Explorer 4.0一样集成在一起。但是,任何熟悉WINDOWS 界面的用户都会发现MMC很直观。

图2.1 Microsoft Management Console使用大部分用户都很熟悉的树形界面。

 

 

 

 

 

 

 

 

 

 

 

    在安装IIS时,会缺省地安装一个或两个站点──一个缺省的站点和一个HTML的管理站点。 要建立一个新站点, 运行MMC,然后右键你的机器名,如图2.2所示。这就会开始一个新建WEB站点的向导,然后你就可以按照这个步骤来建立一个正 常的站点。

图2.2 通过MMC建立WEB站点,并通过向导来改变其属性。

 

 

 

 

 

 

 

 

 

 

 

站点向导使安装变更容易

    New Web Site向导使你按照最通常(而且也是最重要)的步骤来建立你的站点。 第一个选择就是站点的名字,这个名字不必要和你的URL完全相同,但是他必须有一定的意义。在这一章,我们使用soaring( glider)这个站点作为一个例子来说明。 我们输入soaring 作为站点的名字, 然后,把它和www.ssa.org联系起来,在这里ssa代表Soaring Society of America。 (这个站点是真的,运行的是IIS, 你可以试试看。)

    你是在按照一个有独立IP地址的站点吗? 如果这样, 当你在在说明关系时,你可以使用第二个向导,如图2.3所示。在这个例子里我们设置一个独立的IP地址。

 

注意

    IIS4.0介绍了一种允许你把物理路径映射成URL的全新的特征, 不需要为每一个URL提供IP地址。 但是,这种方法是有限制的。 你需要一个已注册的URL, 在测试中的站点不能使用这项功能。

图2.3 选择你的站点使用的IP地址。

 

 

 

 

 

 

 

 

 

警告

    改变缺省的80端口成一个其它值,是决定没有必要的。 如果你想让的你的站点就有安全功能, 你可以使用防火墙或认证系统。 简单地改变端口值显然是达不到安全的目的, 这就象是把你的汽车钥匙放在轮胎上。

Back to Top 查看 aleebaba's 资料 搜索其它贴子 aleebaba 访问 aleebaba's
 
aleebaba
Newbie
Newbie


加入: 2004/5月/17
Online Status: Offline
回复: 29
Posted: 2004/6月/02 4:04下午 | IP记录 引用 aleebaba

在MMC中定义的每一个站点都需要一个根目录。 这个目录可以只包括一个文件,也可以包括一个站点的一大部分。你必须说明物理路径和URL之间的关系。例如: http:\\www.ssa.org可能会映射成e:\soaring\root。

    对于你的站点的按照方式有很多的选项,但是都必须在图2.4中配置。 Soaring站点只有一个文件在根目录下:default.asp。 所有的scripts文件都E:\soaring\scripts下,图象文件都在E:\soaring\images下。

图2.4 www.ssa.org包含3个虚拟的目录,这些目录相互之间不是子目录,这样就消除了由于权限继承而造成的安全问题。

 

 

 

 

 

 

 

 

 

 

    Internet Information Server的安装程序会建立一个名为IUSR_MACHINE的用户名, 这里,MACHINE是的你的计算机的名字。 所有的网络访问者都通过这个用户名和口令来登录到计算机上,并读取计算机文件。在屏幕上显示的这个选项允许匿名访问, 是不能使用的, 因为这使黑客有机会入侵你的系统。

    另一种可行的方法就是通过设置口令来限制对你的站点的访问。 通过资源管理器来改变目录的权限, 只允许授权的用户来访问。 GUEST客户将在每次访问时,WINDOWS NT Challenge/Password 屏幕会索取口令。 要严格地测试NT的安全性,然而, 老的NETSCAPE浏览器已经出现了很多的问题,造成认证失败。

图2.5 微软提供的修改的根目录的属性的对话框。

 

 

 

 

 

 

 

 

 

 

 

 

注意

    你不是只要防备那些网络冲浪者。 作为严格网络管理员, 你应该注意到,在你的服务器的每一次反应是都会服务器上的文件的物理路径传到客户端。黑客们会利用这些信息来研制一个策略来攻击 你的系统。

    你必须化一些时间来学习有关这些重要的事情。 你可以通过查询Great Circle Associaes 支持的邮件防火墙 ,来了解更多的防火墙的信息和黑客的策略。。也可以访问http:\\www.greatcircle.com询问详细信息。

Back to Top 查看 aleebaba's 资料 搜索其它贴子 aleebaba 访问 aleebaba's
 
aleebaba
Newbie
Newbie


加入: 2004/5月/17
Online Status: Offline
回复: 29
Posted: 2004/6月/02 4:08下午 | IP记录 引用 aleebaba

配置读/写权限

权限是INTERNET服务器安全模式所必须支持的。 向导的下一步就是设置一个或多个表2.3中描述的权限。要确保你的权限配置是正确的,不正确的配置会使你的站点工作不正常,或甚 至把你的程序的源程序显示给了访问者。

表2.3目录权限

协议
 描述
 
允许读访问
 文件可以通过浏览器来读取,不需要通过ASP.DLL来处理, 可以为只读的图片和包含HTML文件的设置这项权限。但是千万不能给scripts子目录设置这项权限。
 
允许执行脚本
 如果文件的后缀名为ASP,这个文件就会被ASP.DLL处理,其它的文件会被认为是不存在一样。
 
允许执行的访问
 包括允许执行脚本的权限,主要用于执行你的网页所调用的常用组件。
 
允许写访问
 就像它的名字所表示的,如果你有上载文件到服务器的scripts,这项权限是必需的。否则会出现危险。
 
允许列目录
 允许用FTP浏览的方式来查看你的站点的结构。 因为FTP协议已经内嵌于WEB浏览器内, 所以任何人都可以在浏览器上输入http:\\www.yoursite.com就可以浏览你的目录树。在通常的环境下不要使用 这项权限。
 

以下两种关键的概念是很重要的。

所有的站点的访问者在登录到NT上时都使用IUSR_MACHINE的身份。 要确保这个特殊的用户只对合适的目录和文件有权限。

NT按从头到尾的顺序读安全配置文件。 如果在安全列表中的第一条是Deny All, 无论如何,NT就会再也不会读其它的设置。 这一点就是微软对所有的技术的高级支持。

配置口令认证

    有三种基本的安全配置方法:none模式,通常的IUSR_MACHINE认证方法和保护站点区域。其它的安全配置选项还有微软 的服务器安全软件和强大的硬件卡安全,但是这不在我们的考虑范围内。

    把安全配置设置成none模式要么通过安装向导,要么通过右键站点的名字然后选择合适的权限。

    缺省地,IIS把IUSR_MACHINE设置成作为登录到系统的GUEST用户的权限。 对于每一次WEB请求,它就扮演特定的一个用户,次用户的权限将决定系统如何运行。

技巧

    你可以改变WEB用户的名字,而实际上你很有必要改变这个配置。 黑客会根据传统的WEB帐户的名字来猜测你的WEB用户名。 因为你的机器名会在HTTP头中出现, 所以他们所需要知道的只是口令。 右键站点的名字,选择安全帐户对话框,改变WEB用户的名字。 如果你有好几个虚拟的站点,你必须分别对这些站点进行修改。

多网卡系统

    Multi-Homing的意思就是一个有多于一个网卡的服务器,通常,一个网卡链接一个独立的物理网络。 这些网络通常被称为外部网络和内部网络。

    当WINDOWS NT也配置了防火墙或代理服务器时,这种配置是经常使用的。 运行在WINDOWS NT上的软件会判断是否运行数据报从一个网络区段传输到另一个网络区段。 多网卡系统也常用在繁忙的网络环境内, 用来平衡网络的负载。在这种情况下,所有的网卡都安装同一个网络区段上。

警告

    黑客很喜欢把WEB服务器作为目标。 如果你的系统运行其它的服务,例如,在你的WEB服务器的系统同时作为代理服务器, 注意一定要在你的服务器上所有微软最新的补丁软件。你最好使用一个单独的机器来完成此项功能。(这些特征对UNIX服务器系统也 是适用的)。

配置Multi-Homed系统

    缺省网关的设置错误是一个常见的问题。 一定要确保网关只在计算机的外部网卡上设置。在控制面板中的网络应用程序可以用来配置这些设置,如图2.6中所示。 内部网卡必须把缺省网关设置成空。 由于这个问题没有很好度说明,它常会使很多人化费很多的时间。

警告

    在协议对话框上的允许路由功能复选框,可以控制服务器是否可以把一个网卡的IP数据报送给其它的网卡。 你一定要按你的需要来进行配置, 如果没有选上,表示它会阻止数据报的转发, 但是,如果你选上这个框,数据报就会绕过任何安装在服务器上的防火墙软件。(防火墙通过自己的程序来控制IP数据报的转发)

图2.6 内部网卡的缺省网关必须为空。

 

 

 

 

 

 

 

 

 

 

 

 

 

日志

    IIS4.0具有强大的日志特征。你可以控制整个站点的日志,也可以控制一个目录的日志,你也可以决定是把日志信息写入文本文件 还是把日志信息写入ODBC数据源。(ODBC是微软推出的一种工业标准,它可以把各种数据源链接起来,包括Microsoft SQL Server,Oracle ,Microsoft Access, 以及其它)。

    参考以下的问题,决定如何优化你的站点的日志工作。 要注意那些人会常访问你的站点,什么时间访问你的站点,和他们到底在访问时做些什么。

你的站点是一个访问率很高的站点吗? 不要使用ODBC日志来处理高访问率的站点的日志。

是不是所有的目录都值得进行日志呢? 那些存放网页组件(例如,GIF文件)的目录就不需要日志。

注意

    IIS不能提供文件级的各种日志功能。 最初,这看起来是一个缺点,但是这些多余的工作会使你的站点负担加重, 当你建立站点是一定要记住这个限制。

Back to Top 查看 aleebaba's 资料 搜索其它贴子 aleebaba 访问 aleebaba's
 
aleebaba
Newbie
Newbie


加入: 2004/5月/17
Online Status: Offline
回复: 29
Posted: 2004/6月/02 4:10下午 | IP记录 引用 aleebaba

允许列目录

    允许列目录对大部分的站点是一个坏主意。 如果允许了, 用户就可以通过FTP来检查你的站点的目录。 用这种方式显示你的文件是绝对没有必要的,如果一定需要, 你可以考虑设置一个用FTP访问的区域。

    如果你必须允许列目录,你只要右键你的WEB站点名字,然后选择属性,就可以允许列目录。 在这个属性对话框, 在Home Directory对话框上,把允许列目录的复选框选上,见图2.7。

图2.7 列目录可以在属性对话框的根目录一页允许, 你一定要保证取消列目录的权限。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

设置缺省网页

    IIS需要知道你的站点的缺省网页, 这样才能像http:\\www.ssa.org转换成http:\\www.ssa.org\default.asp。 启动MMC,然后右键你要设置的目录。 选择在图2.8中显示的对话框的属性。 然后,点击文档页显示缺省的文档。

图2.8 缺省文档可以是你设置成你想设置的任何网页,它也可以在任何的虚拟目录下。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    如果你不修改设置,以缺省的设置,IIS会查找在default.cfm后面的default.asp。 因为可以为每一个虚拟目录设置一个缺省网页,所有可能会有许多个缺省网页的名字。最好使用标准的命名方式, 使用许多缺省网页的名字在日后会造成问题。

注意

    如果你修改注册表,来使处理.ASP以外的其它文件也可以用ASP.DLL来处理,注意一定要修改这些设置。 这些注册表信息在下列位置:

\HKEY_LOCAL_MACHINE\System\CurrentControlSet001\Service\W3Sv c\Parameter\ SciptMap

Back to Top 查看 aleebaba's 资料 搜索其它贴子 aleebaba 访问 aleebaba's
 
aleebaba
Newbie
Newbie


加入: 2004/5月/17
Online Status: Offline
回复: 29
Posted: 2004/6月/02 4:11下午 | IP记录 引用 aleebaba

使用管道层加密

    管道层加密-通常被称为SSL-是一种工业标准的加密方法。当服务器和客户端之间在网络线路上传输数据时,SSL会加密这些数据 。服务器允许WEB站点用数字ID来认证自己和允许加密与客户的通讯。实际上,服务器数字ID是建立SSL链接所必须的。这些I D通过事务代理程序(例如:VerSign)来进行服务器认证。

    下面是一个认证过程的简单描述。 当一个加密事务初始化时,浏览器和服务器之间就会进行一次对话。浏览器接收服务器的ID和地址,然后进行授权的认证。如果认证程 序使用ID时, 它会提供一个加密字符串,并开始一个加密事务。

注意

    密匙管理器(在下一部分会介绍)只管理服务器使用SSL加密的数字ID。 它不是用户端的认证。 这里有好几种口令认证的方式可以使用。这一章介绍服务器认证(也叫做站点认证)。以下就是两种客户端的认证方式,他们和密匙管理 器毫无关系:

微软服务器认证的客户端私有协议。

使用服务器数字ID来进行用户认证的VerSign个人认证工具。

    你可以使用象VerSign这样的商业认证工具。他们在第一年需要你花几百美元,在以后会每年花费你一百美元左右。如果你在一个 机器上允许不止一个站点, 你需要为每个站点分别进行认证。

技巧

    128位的加密技术是有出口限制的。 如果你想在美国国内和国外都使用军事级加密方式,你一定要确保你使用的国家没有在限制的范围内。使用这种加密的最好的两个国家就 是以色列和新加坡。

    而40位的加密通常也是足够强大的,你可以有许多的合法理由来使用这个加密。 在1997年6月17号,有人破解了56位的加密方法, 这是一种全球的金融加密的标准。 既然40位和48位的加密在不久以前被破解了, 最好使用更安全的方式。

    如果你的加密信息很重要,有人想中途截取它。 你想向板主解释为什么一个新的竞争者会知道你的公司的最流行的产品的加密方式。

使用密匙管理器

    密匙管理器是用来安装和使用站点认证的。在你进行定购之前,你一定要仔细地考虑所有的信息,因为改变配置是很麻烦和昂贵的。

    使用密匙管理器有以下两步:申请一个认证,和安装这个认证程序。 我们在这里介绍申请认证的过程,认证程序的安装过程和你申请认证的方式有关,它按照以下的步骤进行。

    首先, 从MMC中右键站点,选择属性选项,然后启动密匙管理器,来申请一个认证。 在属性对话框中,点击目录加密的一页,然后点击配置通讯加密。 然后,另一个对话框出现了,在这里,你必须点击密匙管理器来启动密匙管理器应用程序。

    下一步,你可以选择密匙|生成新密匙。 这会调用一个向导对话框来收集信息。 向导的第一步会让你决定是实时申请认证,还是把信息存入到一个文本文件,日后再发送信息(见图2.9)。如果你没有已经链接到I NTERNET上,这种批处理的发送是你的唯一选择。

图2.9 选择自动在线申请认证,还是以文本文件的方式,以后再申请。

 

 

 

 

 

 

 

 

 

 

     

 

     密匙向导的第二步会向你询问密匙的名字,口令,和密匙的大小(见图2.10):

密匙的名字只是为了方便使用,它可以给你提供一个友好的名字来找到这个密匙进行申请。

这个口令是很重要的。 最好选择一个既有数字,又有字母的口令, 而且你不要把这个口令不要作为其它的用处。这个口令将在以后每次访问时使用,所以最好写下口令,把他存在一个安全的地方。

缺省的密匙的长度是512位。 选择对话框中提供的最大值。

图2.10 向导的第二步向你询问会影响认证的重要的信息。

 

 

 

 

 

 

 

 

   

 

    第三步,会向你询问组织名称,组织单元,一般名称。我们将填写Soaring Society of American作为组织名称, 填写Internet Development作为组织单元名称,和填写www.ssa.org作为一般名称。最终的一般名称指的是你在INTERNET上使用的名称, 如果你的机器指在INTRANET上使用,你可以使用机器名称。

    第三步,会向你询问国家,州,和城市的名字,这里我们用两个字母的简写,(例如:US代表The Unite States,WA代表Washington), 我们这个例子把Redmond作为城市名字。

 

Back to Top 查看 aleebaba's 资料 搜索其它贴子 aleebaba 访问 aleebaba's
 
aleebaba
Newbie
Newbie


加入: 2004/5月/17
Online Status: Offline
回复: 29
Posted: 2004/6月/02 4:12下午 | IP记录 引用 aleebaba

应用程序开发环境的配置

    这一章前面的部分介绍了如何通过使用以后界面来使用和配置IIS。 但是,有时以后界面并不是一个完全合适的工具,这一章余下的部分介绍在幕后控制IIS 的操作。以下就是为什么这些设置要直接控制。

有一些配置是通过以后界面表示出来的,他们是那些能明显地影响IIS的性能的设置,如果配置不正确,会严重影响系统性能。

你是一个程序开发者,你需要通过另一个程序来改变这些配置。

    以下的介绍是专门为那些程序开发者而说的。这些表被分成了控制IIS操作的不同部分的逻辑部分,例如:全局设置,WWW服务,F TP服务。 有一些设置被不止一个部分使用,这些会在相关的表中注释了。

    应用程序开发是反复的过程,如果IIS程序开发者建立一个组件,然后就要把它嵌在在ASP网页内进行测试。如果这个组件工作不正 常,开发者就需要从头开始这个循环过程。

一些就是一个影响开发操作的重要设置:

把ASP cache设置成0。 在理论上,每次你编辑ASP源程序以后 ,IIS都会立即检查到你的源程序的改变,但是在实际操作中,如果你不把ASP cache改成0,你就会遇到好些问题。 右键在MMC的属性结构浏览器中的相关目录,选择属性|根目录|配置来调出如图2.11所示的对话框。最后,点击Active Server Page的一页,把ASP文件的Cache空间的大小设置成0。

这一部分是关于脚本程序的调试。(最好不要在你的正式的机器上使用这些特征,如果你使用了,你的机器的性能会变得很可怕)。右键 在MMC的属性结构浏览器中的相关目录,选择属性|根目录|配置 来调出如图2.12所示的对话框。 然后点击 ASP脚本调试,选择允许ASP服务器端脚本调试。(客户端的ASP脚本调试,在这一版的IIS中是不可行的。)

有一些组件是不可信的。 如果你怀疑一个组件是不稳定的,你可以让它先在自己的地址空间内运行。 使用MMC的浏览器找到这个组件所在的目录。右键这个目录名,然后选择属性。然后选择在独立的内存空间内运行的选项(见图2.1 3)。在这个目录下的所有的程序会都具有这个特征。

图2.11 把ASP 文件 Cache的大小改成0。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

图2.12 在开发环境中允许脚本程序调试

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

图2.13 在一个目录下的程序只允许在独立的内存空间内运行

 

 

 

 

 

 

 

 

 

 

 

 

 

   

 

    你可以通过在metabase数据库内所在AppIsolated参数来实现文件级的这些设置。 遗憾的是,这些参数没有在属性对话框内显示出来,所以需要一个程序来对metabase数据库进行操作。(见这一章最后部分的m etabase数据库入口。)

Back to Top 查看 aleebaba's 资料 搜索其它贴子 aleebaba 访问 aleebaba's
 
aleebaba
Newbie
Newbie


加入: 2004/5月/17
Online Status: Offline
回复: 29
Posted: 2004/6月/02 4:13下午 | IP记录 引用 aleebaba

Internet Information Server的一些设置被保存在WINDOWS NT注册表内, 和其它的每一个WINDOWS NT程序和服务的设置在一起。 但是,许多IIS配置被转移到一个新的数据库-被称为metabase。 这些入口要么是用来启动IIS的,要么是为了向上兼容, 是注册表的一部分。

这个metabase有两个好处:一个是有等级,一个是更快。微软正在逐渐地把注册表信息移入metabase。 作这种改动,是因为注册表是面向per se操作系统的。

警告

注册表包括了会影响计算机操作和性能的设置。 如果不改变某一些设置,你的计算机的性能会受到影响。 注意,在你修改注册表之前,你一定要有一个注册表的备份和一个紧急修复盘。

以下就是为了方便而列出的一些注册表入口。这些设置可以在那些和Internet Information Server一起安装的在线文档中找到。

你可以通过选择开始|运行,然后输入regedit,来运行注册表编辑器。

全局注册表入口

当推出IIS3.0,注册表包含了IIS每一个方面的配置信息。IIS4.0把很多的配置移入到metabase内(见前面的部 分),但是为了使允许IIS来「bootstrap」它自己,IIS的许多入口还保留在注册表中。表2.4列出了这些全局配置信 息。

这是注册表的路径:

HKEY_LOCAL_MACHINE\SYSTEM

\CurrentControlSet

\Service

\Inetinfo

\Parameter

表2.4全局注册入口

名字
 范围
 缺省值
 描述
 
CacheSecureDescriptor
 0, 1
 1
 允许对象的安全描述器,表示允许。
 
DisableMemoryCache
 0,1
 0
 不允许使用内存Cache,只能通过RegEdit来修改。
 
ListenBackLog
 1-250
 15
 队列中能容纳的活动请求的数目。
 
MacConcurrency
 0-0xFFFFFFFF
 0
 每个处理器的线程的数目。IIS会把它设置成0。
 
MaxPoolThreads
 0-0xFFFFFFFF
 10
 每一个处理器的pool线程的数目,pool线程是用来监视网络请求的。
 
PoolThreadLimit
 0-0xFFFFFFFF
 2/MB
 Pool线程的最大数目。缺省值是每2M物理内存。 他必须比大于或等于MaxPoolThreads
 
MinFileKbSec
 1-8192
 1000
 服务器放弃文件传输之前所经历的时间。 这是按字节来设置的,而不是按KB来设置的。
 
ObjectCacheTlt
 0-0xFFFFFFFF
 30
 对像在Cache里生存的时间。(用秒来计算。)
 
ThreadTimeout
 0-0xFFFFFFFF
 1天
 在最后一个请求之后,I/O线程所维持的时间长度。(用秒来计算。)
 
UserTokemTlt
 0-0xFFFFFFFF
 10分钟
 用户的令牌在Cache内保留的时间。(用秒来计算。)这些令牌在需要登录时使用。
 

Back to Top 查看 aleebaba's 资料 搜索其它贴子 aleebaba 访问 aleebaba's
 
aleebaba
Newbie
Newbie


加入: 2004/5月/17
Online Status: Offline
回复: 29
Posted: 2004/6月/02 4:17下午 | IP记录 引用 aleebaba

特殊服务的注册表入口

表2.5列出了IIS的特殊服务的注册表入口。 而且,这些入口也是「bootstrap」设置,而更多的配置是被在metabase中的入口所控制的。(Metabse参数在 从表2.8开始的表中开始)。

注册表路径如下:

HKEY_LOCAL_MACHINE\SYSTEM

\CurrentControlSet

\Service

\ServiceName(W3SVC 或 FTP)

\Parameters

表2.5特殊服务的注册表入口

名字
 范围
 缺省值
 描述
 
AcceptByteRange
 0, 1
 1
 如果设置这一项,HTTP服务器就可以出来无边界的请求,即在HTTP头中有「Range:bytes=」。这和最 新推出的HTTP扩展标准有关。(WWW)
 
AllowGuestAccess
 0, 1
 1
 允许匿名登录。为了安全,最好把他关闭。(WWW和FTP)

 

 
 
名字
 范围
 缺省值
 描述
 
AlllowSpecialCharsInShell
 0, 1
 0
 允许在命令字符串中使用[ | ( , ; % < >)]这些字符。如果你的服务器很重要,不要使用这个选项,因为黑客将会利用这一点来破坏你的机器。(WWW)
 
AnnotateDirectories
 0, 1
 0
 在改变命令时允许使用自定义消息。这些消息存在一个名字为~ftpsvc~.ckm的文件中。(FTP)
 
EnablePortAttack
 0, 1
 0
 允许用在IP_PORT_RESERVED下的保留的端口来连接。不要允许这一项,因为这对黑破解是有帮助的。(F TP)
 
EnableSvcLog
 0, 1
 1
 允许被INTERNET定位服务所发现。(FTP,WWW)
 
LogErrorRequests
 0, 1
 1
 允许错误日志。(WWW)
 
LogSuccessfulRequests
 0, 1
 1
 允许活动日志。(WWW)
 
LowerCaseFiles
 0, 1
 0
 在一个文件被请求访问时,允许对文件名区分大小。(FTP)
 
SSIEnableCmdDirective
 0, 1
 1
 允许#exec指令,缺省情况下,在注册表没有这一项。(但是仍然要设置成1)。(WWW)
 
TryExceotDisable
 0, 1
 0
 不允许意外事件的缓冲。因为这会是那些懦弱的ISAPI程序终止服务器。 但是你可以在调试时使用。(WWW)
 
UploadReadAhead
 0-0x80000000
 0
 在向应用程序发出扩展命令之前,服务器从客户端缺省地读取的数目是48K。应用程序必须读取余下的数据。(WWW)
 
UsePoolThreadForCgi
 0, 1
 1
 为CGI应用程序使用Pool线程。慢速的应用程序会耗费Pool。见MaxPoolThread。(WWW)
 

Back to Top 查看 aleebaba's 资料 搜索其它贴子 aleebaba 访问 aleebaba's
 
aleebaba
Newbie
Newbie


加入: 2004/5月/17
Online Status: Offline
回复: 29
Posted: 2004/6月/02 4:19下午 | IP记录 引用 aleebaba

语言引擎的注册表入口

Internet Information Server 有著难以置信的灵活性,尤其是在涉及脚本语言的方面。如果你更喜欢使用FORTRAN的脚本语言,你只要开发关于这种语言的一种 脚本语言,然后在这里告诉IIS这种脚本语言的信息就可以了。 表2.6描述了如何添加一种新语言的设置。

有几种脚本语言是常用的,包括PerlScript。(它可以在www.hip.cpm上可以下载得到。)

注意,这些关键字没有缺省安装。你需要使用RegEdit来建立它。

这是注册表路径:

HKEY_LOCL_MACHINE\SYSTEM

\CurrentControlSet

\Services

\W3SVC

\ASP

\LanguageEngines

\LanguageName

表2.6 语言引擎的注册表入口

名字
 范围
 缺省值
 描述
 
LangugeEngines
 String
 N/A
 IIS所不支持的特别的脚本语言
 

Metabase

除了更快和支持继承以外,Metabase和注册表很相似。 这个文件位于\WINNT\SYSTEM32\inetsrv\MetaBse.bin。

没有一个象用REGEDIT来操作注册表一样来操作metabase数据库的工具。然而,你可以通过MMC,Microsoft Active Data Services Interface(ADSI),或IIS AdministrationBase Object来操作配置。除了MMC以外,其它的方法都需要编程。和IIS同时安装的在线文档里,有C++,Java, 和Visual Basic的例子程序。

Back to Top 查看 aleebaba's 资料 搜索其它贴子 aleebaba 访问 aleebaba's
 

of 2 下一页 >>
  回复发表新主题
显示可打印的页面 显示可打印的页面

论坛跳转
不能 张贴新论题在这个讨论版
不能 回应论题在这个讨论版
不能 删除你的发言在这个讨论版
不能 编辑你的发言在这个讨论版
不能 新增投票标题在这个讨论版
不能 在这个讨论版投票

Edit by doreme Forums version 2004
Welcome ©2001-2004 doreme Guide

This page was generated in 0.1720 seconds.

 
保养品
保养品, Skin Care
www.elady.tw
美材批发
美材, Cosmetic
www.elady.tw/beauty_org
保养品批发
名牌保养品、保养品批发
gb.perfume.com.tw/skincare
饰品批发
饰品、饰品批发
gb.perfume.com.tw/ornament