WiX - HTTP 响应 Header
WiX - HTTP Response Header
我正在使用 WiX 3.10。对于仅在 IE 中使用的网站。 (.net 2.0)
我们最近有一些用户抱怨布局混乱,因为他们的浏览器的兼容性设置。
解决此问题的一种方法似乎是在 IIS
中添加 HTTP 响应 Header(名称:X-UA-Compatible,值:IE=EmulateIE7)
我可以从 Product.WXS 以某种方式执行此操作吗,所以在安装后,这将被设置?
谢谢
HttpHeader
element 让你指定任意 headers.
这是使用 WiX 设置网站和 HTTP 响应 header 的示例代码。
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:iis="http://schemas.microsoft.com/wix/IIsExtension">
<Product Id="*" Name="IISTest" Language="1033" Version="1.0.0.0" Manufacturer="Microsoft" UpgradeCode="9670352d-2b30-446e-b17f-a31a7d08d917">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
<MediaTemplate />
<Feature Id="ProductFeature" Title="IISTest" Level="1">
<ComponentGroupRef Id="ProductComponents" />
<ComponentGroupRef Id="MyWebsiteIISConfiguration" />
</Feature>
</Product>
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<!-- Will reference to C:\inetpub-->
<Directory Id="INETPUB" Name="Inetpub">
<Directory Id="WwwRoot" Name="WWWRoot">
<!-- Will reference to c:\Inetpub\wwwroot\MyWebSite-->
<Directory Id="INSTALLFOLDER" Name="MyWebSite" />
</Directory>
</Directory>
</Directory>
</Fragment>
<Fragment>
<DirectoryRef Id="INSTALLFOLDER">
<Component Id="MyInstallWebsite" Guid="1253DBFC-D959-470E-A044-7DDABFFC1298" KeyPath="yes">
<!-- Install to default web site -->
<iis:WebSite Id="MyWebsiteWebsite" Description='MY Website' Directory='INSTALLFOLDER' AutoStart='yes' StartOnInstall='yes'>
<iis:HttpHeader Id="header_id" Name="X-UA-Compatible" Value="IE=EmulateIE7"/>
<iis:WebAddress Id="AllUnassigned" Port="80" />
<iis:WebApplication Id="MyWebsiteApplication" Name="[MyWebsiteWebsite][WEBSITE_ID]" WebAppPool="MyWebsiteAppPool">
</iis:WebApplication>
</iis:WebSite>
</Component>
<Component Id="MyWebsiteAppPool" Guid="" KeyPath="yes">
<iis:WebAppPool Id="MyWebsiteAppPool"
Name="MyWebsiteAppPool"
Identity="applicationPoolIdentity"
ManagedPipelineMode="Integrated"
ManagedRuntimeVersion="v4.0" />
</Component>
</DirectoryRef>
</Fragment>
<Fragment>
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
<Component Id="ProductComponent" Guid="{6F44232F-1C0B-4278-AB2B-BFD34FAE863C}">
<File Id="favicon.ico" Source="favicon.ico" />
</Component>
</ComponentGroup>
<ComponentGroup Id="MyWebsiteIISConfiguration">
<ComponentRef Id="MyInstallWebsite" />
<ComponentRef Id="MyWebsiteAppPool" />
</ComponentGroup>
</Fragment>
</Wix>
我正在使用 WiX 3.10。对于仅在 IE 中使用的网站。 (.net 2.0)
我们最近有一些用户抱怨布局混乱,因为他们的浏览器的兼容性设置。
解决此问题的一种方法似乎是在 IIS
中添加 HTTP 响应 Header(名称:X-UA-Compatible,值:IE=EmulateIE7)我可以从 Product.WXS 以某种方式执行此操作吗,所以在安装后,这将被设置?
谢谢
HttpHeader
element 让你指定任意 headers.
这是使用 WiX 设置网站和 HTTP 响应 header 的示例代码。
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:iis="http://schemas.microsoft.com/wix/IIsExtension">
<Product Id="*" Name="IISTest" Language="1033" Version="1.0.0.0" Manufacturer="Microsoft" UpgradeCode="9670352d-2b30-446e-b17f-a31a7d08d917">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
<MediaTemplate />
<Feature Id="ProductFeature" Title="IISTest" Level="1">
<ComponentGroupRef Id="ProductComponents" />
<ComponentGroupRef Id="MyWebsiteIISConfiguration" />
</Feature>
</Product>
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<!-- Will reference to C:\inetpub-->
<Directory Id="INETPUB" Name="Inetpub">
<Directory Id="WwwRoot" Name="WWWRoot">
<!-- Will reference to c:\Inetpub\wwwroot\MyWebSite-->
<Directory Id="INSTALLFOLDER" Name="MyWebSite" />
</Directory>
</Directory>
</Directory>
</Fragment>
<Fragment>
<DirectoryRef Id="INSTALLFOLDER">
<Component Id="MyInstallWebsite" Guid="1253DBFC-D959-470E-A044-7DDABFFC1298" KeyPath="yes">
<!-- Install to default web site -->
<iis:WebSite Id="MyWebsiteWebsite" Description='MY Website' Directory='INSTALLFOLDER' AutoStart='yes' StartOnInstall='yes'>
<iis:HttpHeader Id="header_id" Name="X-UA-Compatible" Value="IE=EmulateIE7"/>
<iis:WebAddress Id="AllUnassigned" Port="80" />
<iis:WebApplication Id="MyWebsiteApplication" Name="[MyWebsiteWebsite][WEBSITE_ID]" WebAppPool="MyWebsiteAppPool">
</iis:WebApplication>
</iis:WebSite>
</Component>
<Component Id="MyWebsiteAppPool" Guid="" KeyPath="yes">
<iis:WebAppPool Id="MyWebsiteAppPool"
Name="MyWebsiteAppPool"
Identity="applicationPoolIdentity"
ManagedPipelineMode="Integrated"
ManagedRuntimeVersion="v4.0" />
</Component>
</DirectoryRef>
</Fragment>
<Fragment>
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
<Component Id="ProductComponent" Guid="{6F44232F-1C0B-4278-AB2B-BFD34FAE863C}">
<File Id="favicon.ico" Source="favicon.ico" />
</Component>
</ComponentGroup>
<ComponentGroup Id="MyWebsiteIISConfiguration">
<ComponentRef Id="MyInstallWebsite" />
<ComponentRef Id="MyWebsiteAppPool" />
</ComponentGroup>
</Fragment>
</Wix>