分享

Installshield 12 中文系列教程之 配置服务 (三)配置IIS

 icecity1306 2014-09-12
管理Internet信息服务
Internet信息服务(IIS)是微软开发的WEB服务器。它提供了一个安全的平台,支持编译开发基于WEB的应用程序,管理WEB站点,发布Internet或者internat信息。IIS是包含在Windows2000或者更高服务器版本和Windows XP操作系统中。只有在目标机器上用户有管理员权限,并且安装IISInstallShield才能支持IIS
在一个含有IIS设置的安装程序运行期前,InstallShield会在目标机器上检测IIS是否存在。如果没有安装IIS,安装程序会显示一个对话框,提示用户他没有安装IIS并询问是否想安装IIS再继续。如果用户不安装IIS,安装程序继续执行,但是不会创建虚拟目录。

提示:
  • IIS6.0只有在Windows Server 2003平台下支持。在一个Windows Server 2003系统上,如果没有安装IIS6,那么其他的IIS目录和站点将仍然创建,但是将跳IIS6.0特殊的项目
  • Windows XP Professional 上的IIS5.1只能运行一个WEB站点,这是IIS5.1的限制。
  • InstallShield支持4.0或者更高版本的IIS。不支持NT服务器上的或者工作站上的IIS

创建一个
WEB站点并添加虚拟目录

如果你想在InstallShield项目中创建一个应用程序池并想关联到一个虚拟目录或者WEB站点,你必须在同一构件中创建应用程序池、虚拟目录或WEB站点。这样可以确保应用程序池先于虚拟目录或WEB站点创建。这是IIS6的需求并不是Basic MSI或者InstallScript MSI项目的限制。

要在安装程序运行时在目标系统中创建一个虚拟目录或者WEB站点:
1、打开Internet Information Services视图
2、Web Sites窗口中单击右键,选择Add Web SiteInstallShield添加一个新的WEB站点。
3、选择这个WEB站点来定义它的设置
4、View Filter列表中,选择你想与虚拟目录相关联的功能部件
提示:View Filter可以让你指定安装程序中与虚拟目录关联的构件。但这不适用于web站点与功能部件的关联,因为WEB站点与构件无关。
5、右键单击这个新的WEB站点并选择New VirtualDirectoryInstallShield添加一个新的虚拟目录。
6、选择虚拟目录来定义它的属性。

向一个IIS虚拟目录添加文件
要添加文件到IIS虚拟目录:
1、如果你没有WEB站点,先添加一个WEB站点。InstallShield自动向Files视图中添加[IISROOTFOLDER]预定义路径。
2、打开Files视图
3、Feature列表中,选择你想添加文件的功能部件
4、Destinationcomputer’s folders面板中,添加文件到[IISROOTFOLDER]目录或者它的子目录。
5、打开InternetInformation Services视图
6、创建一个虚拟目录。
7、单击VirtualDirectory标签
8、选择A directorylocated on this computer选项
9、Local Path框中,输入与刚才在Files视图中包含添加的新文件的目录相同的目标目录。
要迅速的添加[IISROOTFOLDER]目录到框中,除了可以手工输入路径,还可以使用Browse,create, or modify a directory entry来选择目录。

在安装时,文件复制到目标路径。另外,如果目标系统上存在IIS,那么虚拟目录将配置指向到指定目录。



删除虚拟目录

要在安装程序中删除一个虚拟目录:
1、打开Internet Information Services视图
2、Web Sites窗口中,右键单击虚拟目录并选择Delete即可
提示:如果你不想程序卸载时删除虚拟根,在基于Windows Installer的项目中配置permanent属性为YES,在InstallScript项目中配置Uninstall属性为NO

添加应用程序池
要在IIS里面创建一个新的应用程序池:
1、打开Internet Information Services视图
2、右键单击ApplicationPools窗口并选择AddApplication Pool,来添加一个新的应用程序池
3、重命名这个应用程序池,并配置它的相关属性

删除应用程序池
要从安装中删除一个应用程序池:
1、打开Internet Information Services视图
2、ApplicationPools窗口中,右键单击应用程序池并选择Delete即可。
提示:在InternetInformation Services视图中删除一个应用程序池,即使在IIS管理控制台中有一个同名的应用程序池或者应用程序池在构件中并未标记为永固的状态,也并不能保证在安装程序运行时它会被卸载。更多信息,参考卸载WEB服务扩展和应用程序池。

添加WEB服务扩展
要在安装中添加一个web服务扩展:
1、打开Internet Information Services视图
2、Web ServiceExtensions窗口中单击右键选择Add WebService Extension InstallShield将添加一个新的web服务扩展
3、重命名Web服务扩展,并配置相关属性

删除Web服务扩展
要从安装程序中删除一个Web服务扩展:
1、打开Internet Information Services视图
2、Web ServiceExtension窗口中,右键单击Web服务扩展并选择Delete即可。
提示:在InternetInformation Services视图中删除一个Web服务扩展,即使在IIS管理控制台中有一个同名的Web服务扩展或者Web服务扩展在构件中并未标记为永固的状态,也并不能保证在安装程序运行时它会被卸载。更多信息,参考卸载WEB服务扩展和应用程序池。

卸载Web服务扩展和应用程序池
提示:Web服务扩展,应用程序池及关联属性只有在机器上安装IIS6.0才可用。IIS6.0只在Windows Server 2003平台下支持。

任意的Web服务扩展和应用程序池如果与安装中的应用程序池和Web服务扩展同名,当安装程序中与之关联的功能部件卸载时,它们也会被卸载,除非相应的构件标记为永固。即使这些应用程序池护着Web服务扩展起初并不是由安装程序创建的,如果它们与安装程序中的同名也同样会被删除。但是有一个特例就是默认的应用程序池,叫做DefaultAppPool,永远不会被卸载程序删除。

要确保一个Web服务扩展在卸载期间被删除:
1、打开Internet Information Services视图
2、Web ServiceExtension窗口中,单击选择相应的Web服务扩展
3、Web Service Extension标签中,去掉MarkComponent as Permanent的选择

要确保一个Web服务扩展在卸载期间被卸载:
1、打开Internet Information Services视图
2、ApplicationPool窗口中,单击选择相应的Web服务扩展
3、单击General标签
4、去掉MarkComponent as Permanent的选择
提示:如果MarkComponent as Permanent选择框是选中的,那么Web服务扩展或者应用程序池在卸载后悔保留在目标系统上。

配置额外的IIS虚拟目录设置
当你在InternetInformation Services视图中选择一个Web站点中的虚拟目录是,这些标签中只显示了IIS虚拟目录的主要公共设置。你可以配置其它的没有在这些标签中显示的其他有关IIS虚拟目录的设置。

要配置IIS视图中没有显示的设置:
1、创建一个VBScript自定义操作(custom action
2、在执行顺序的InstallFinalize之前插入这个自定义操作
3、使用ADSI对象模型来配置这些设置
可以查看MSDN库来指导如何使用ADSI对象模型来配置IIS虚拟目录设置,或者可以使用IIS视图中的Advanced标签来配置这些额外的设置。

Web站点或者虚拟目录配置自定义错误信息
当用户尝试访问一个Web站点产生超文本传输协议错误是,用户的浏览器中会显示一个描述这个错误的默认信息。你可以在安装程序中配置IIS使用自定义错误信息,即引导HTTP错误代码到一个文件或URL来取代默认的错误信息。

Web站点或者虚拟目录配置自定义错误信息:
1、创建一个包含自定义错误信息的文件并添加到安装中
2、打开IIS视图
3、选择你要自定义HTTP错误信息的Web站点或者虚拟目录。它们的设置显示在右测窗口。
4、选择Custom Errors标签
5、选择你想更改的HTTP错误代码并单击Edit。打开Error Mapping Properties 对话框
6、要映射一个错误代码到一个文件:
A、Message Type列表中,选择File
B、File框中,输入你的安装程序中的自定义错误信息文件的路径和文件名,或者单击浏览按钮来定位这个文件

要映射一个错误代码到一个URL
A、Message Type列表中,选择URL
B、URL框中,输入指向自定义错误信息的URL


在目标机器上部署Web服务
在目标系统上部署Web服务需要复制Web服务的文件到特殊的位置,并为这个目录分配一个虚拟目录名称,这样Web服务才能通过HTTP访问。

要在目标机器上部署Web服务:
1、Files and Folders视图中,选择在目标机器上的安装文件的目录,并在目录中添加文件。
2、切换到InternetInformation Services视图,并创建一个虚拟目录
3、TargetDirectory中,选择刚才与在Files andFolders中选择的相同目标目录。
在安装中,文件将被复制到目标目录。另外,如果目标机器上有IIS,那么虚拟目录也会配置到目标目录上。

添加IISROOTFOLDER 支持
IISROOTFOLDER
是一个InstallShield用来确定目标系统上Web服务的根目录的目录变量。如果你在安装中使用了IIS功能并添加了一个Web站点,这个IISROOTFOLDER变量会自动添加。
提示:所有的在Filesand Folders视图中添加到IISROOTFOLDER目录的文件都将安装到目标机器上的Web服务的根目录。如果目标机器上没有安装IIS,那么文件将被复制到磁盘根目录。

IIS_PORT_NUMBER属性
这个IIS_PORT_NUMBER 属性已经不再使用。如果在早期的项目版本中存在这个属性,更新程序将自动处理。更新程序将创建一个Web站点设置这个端口号部分为[IIS_PORT_NUMBER]。当你创建一个新的Web站点时你可以使用任意属性或硬编码数。

IIS_VERSION属性
这个属性只用在下列类型的项目中:
  • Basic MSI
  • InstallScript MSI
当你创建一个Web项目或者添加一个虚拟目录到项目中,在System Search视图中会自动添加一项来搜索目标系统上安装的IIS版本。这个属性可以在RegLocatorAppSearch表中设置,确定安装的IIS版本。
这个属性中包含IIS主目录的路径,默认是在c:/inetpub/wwwroot 

IIS_WEBSITE_NAME属性
这个IIS_WEBSITE_NAME
属性也已经不再使用。如果在早期的项目版本中存在这个属性,更新程序将自动处理。更新程序将创建一个Web站点设置这个站点号部分为[IIS_WEBSITE_NUMBER]对于一个新的Web站点时你可以使用任意属性或硬编码数。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多