gpt4 book ai didi

iis-7 - Wix 3.5 和 IIS7 - WriteIIS7ConfigChanges 失败 - 虽然尝试将三个 Web 应用程序作为虚拟目录安装到默认网站

转载 作者:行者123 更新时间:2023-12-04 17:56:53 25 4
gpt4 key购买 nike

我希望有人可以帮助我解决我在使用 时遇到的问题维克斯 3.5.2519.0 Windows Server 2008 IIS7 & IIS6 兼容性 安装的功能。

MSI 日志文件

我们在尝试在默认网站下定义三个虚拟 Web 应用程序目录时遇到以下错误,如使用 /log <filename> 记录的那样。 msiexec.exe 的选项:

Action 17:05:57: StartIIS7ConfigTransaction. Starting IIS Config Transaction
Action 17:05:57: RollbackIIS7ConfigTransaction. Rolling back IIS Config Transaction
Action 17:05:57: CommitIIS7ConfigTransaction. Committing IIS Config Transaction
Action 17:05:57: ConfigureIIs7Exec. Configuring IIS
ConfigureIIs7Exec: Error 0x800700b7: Failed get sites section
ConfigureIIs7Exec: Error 0x800700b7: Failed to search for Website
ConfigureIIs7Exec: Error 0x800700b7: Failed get sites section
ConfigureIIs7Exec: Error 0x800700b7: Failed to search for Website
ConfigureIIs7Exec: Error 0x800700b7: Failed get sites section
ConfigureIIs7Exec: Error 0x800700b7: Failed to search for Website
Action 17:05:57: WriteIIS7ConfigChanges. Installing Config Keys and Values
WriteIIS7ConfigChanges: Error 0x800700b7: Failed get sites section
WriteIIS7ConfigChanges: Error 0x800700b7: Failed to read sites from config
WriteIIS7ConfigChanges: Error 0x800700b7: Failed to configure IIS application.
WriteIIS7ConfigChanges: Error 0x800700b7: WriteIIS7ConfigChanges Failed.
Action ended 17:05:57: InstallFinalize. Return value 3.
Action 17:05:57: Rollback. Rolling back action:
Rollback: Installing Config Keys and Values
Rollback: Configuring IIS
Rollback: Committing IIS Config Transaction
Rollback: Rolling back IIS Config Transaction

Wix 组件声明

需要安装的网站有3个,分别在 wxs中用组件xml语法声明。文件如下(它们不相同,但非常接近):
<Component Id="DataServiceVirtualDir" Guid="9AC00BDC-D710-429f-B68B-8130DB17C90C">
<CreateFolder/>
<iis:WebVirtualDir Id="OurApplicationDataService"
Alias="OurApplicationDataService"
Directory="DATASERVICEDIR"
WebSite="OurApplicationDataService"
DirProperties="OurApplicationDirProperties">
<iis:WebApplication Id="OurApplicationDataService" Name="OurApplicationDataService">
</iis:WebApplication>
</iis:WebVirtualDir>
</Component>

网站声明

同样,它们用以下 website 声明元素和支持元素:
<iis:WebSite Id="OurApplicationDataService" Directory="DATASERVICEDIR" 
Description="OurApplication Data Service">
<iis:WebAddress Id="AllUnassignedData" IP="*" Port="80"/>
</iis:WebSite>

<iis:WebSite Id="OurApplicationSecurityService" Directory="SECURITYSERVICEDIR"
Description="OurApplication Security Service">
<iis:WebAddress Id="AllUnassignedSecurity" IP="*" Port="80"/>
</iis:WebSite>

<iis:WebSite Id="OurApplicationProcessingFacades" Directory="PROCESSINGFACADESDIR"
Description="OurApplication Processing Facades">
<iis:WebAddress Id="AllUnassignedFacades" IP="*" Port="80"/>
</iis:WebSite>

<iis:WebDirProperties Id="OurApplicationDirProperties" WindowsAuthentication="no"
AnonymousAccess="yes" AnonymousUser="OurApplicationUserID" />

<iis:WebDirProperties Id="SecurityDirProperties"
WindowsAuthentication="yes" AnonymousAccess="no" />

到目前为止的总结和结论

所以这个神秘的安装程序错误, 0x800700b7 ,似乎把这一切都搞砸了。

有趣的是,安装程序的早期迭代安装良好,并且之前多次卸载良好。但是,现在尝试卸载以前的安装程序并安装新的安装程序时,卸载失败并出现完全相同的错误,实际上卸载日志文件的失败部分与上面的日志部分几乎相同。

如果我将 Web 应用程序二进制文件复制到所需的安装目录并通过 IIS7 管理控制台手动连接虚拟目录,则一切正常,并且网站会适本地响应请求。

据我所知,IIS7 网站和目标安装目录都是空的、空白的,并且在安装准备过程中进行了其他清理。

谷歌上关于这个的信息不多,我想我可能只需要在盒子上重新安装 IIS7 看看它是否能让问题消失,但可以说这是核选项。

有人有什么想法吗?

提前致谢。

最佳答案

这可能有点晚了,因为您已经重建了服务器,但我遇到了完全相同的错误。

错误的最终原因是 apppool 为我的应用程序使用了错误的 .NET 版本。我通过为应用程序分配它自己的应用程序池而不是使用服务器上的默认应用程序池来解决它。您可能将服务器上的默认应用程序池设置为您的应用程序所需的版本,这就是它最终工作的原因。

<Directory Id='WebAppFiles' Name='WebApp'>
<!-- The component to define the Virtual Directory.-->
<Component Id="WebVirtualDirApp"
Guid="your-guide-goes-here">
<!-- The virtual directory we are installing. -->
<!-- The Alias attribute is the name thata will be put into IIS.-->
<!-- The Directory attribute is the "Physical Path" property in
IIS and needs to tie to an ID specified in the setup. -->
<!-- The WebSite attribute ties to a <WebSite> element in the
setup file. As this is an example of installing into the
"Default Web Site" that element is not under a component.-->
<iis:WebAppPool Id="YourWebAppPoolId" Name="YourWebAppPool"
ManagedRuntimeVersion="v2.0" />
<iis:WebVirtualDir Id="VDirApp" Alias="[VDIRNAME]"
Directory="WebAppFiles" WebSite="DefaultWebSite">
<!-- Turn the Virtual Directory into a web application. -->
<iis:WebApplication Id="TheWebApplication"
WebAppPool="YourWebAppPoolId"
Name="[VDIRNAME]" />
</iis:WebVirtualDir>
<!-- This is pretty important. If the CreateFolder isn't there the
WebVirtualDir won't get created as there's no files in this
component.
http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg03483.html -->
<CreateFolder/>
</Component>
</Directory>

关于iis-7 - Wix 3.5 和 IIS7 - WriteIIS7ConfigChanges 失败 - 虽然尝试将三个 Web 应用程序作为虚拟目录安装到默认网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6848092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com