我有一个ASP.NET页面(index.aspx)使用剖析和个性化发布在Tridion2011 SP1上。它只显示一个动态组件演示文稿和第二个动态组件演示文稿,如果用户以前看过3页标记为“高尔夫”(通过cat+keywords)的页面的话。
我通过添加TBB‘目标组个人化’和‘激活跟踪’来启动分析到我的默认完成操作。我重新发布了这个页面,看到它用分析代码创建了动态cp,一切都进行得很好:
<tridion:ComponentPresentation runat="server" PageURI="tcm:8-667-64" ComponentURI="tcm:8-668" TemplateURI="tcm:8-666-32"/>
<tridion:TargetGroup runat="server" ItemURI="tcm:8-667-64">
<tridion:Conditions runat="server" Negate="false" Operator="AND">
<tridion:Conditions runat="server" Negate="false" Operator="OR">
<tridion:Conditions runat="server" Negate="false" Operator="AND">
<tridion:Condition runat="server" Type="TrackingKey" Operator="=" Negate="false" Name="Golf" Value="3"/>
</tridion:Conditions>
</tridion:Conditions>
</tridion:Conditions>
<tridion:ComponentPresentation runat="server" PageURI="tcm:8-667-64" ComponentURI="tcm:8-663" TemplateURI="tcm:8-666-32"/>
</tridion:TargetGroup>
<tridion:IncrementKey runat="server" ItemURI="tcm:8-667-64" Name="Golf" ComponentURI="tcm:8-663"/>问题:当我在浏览器中查看index.aspx时,它会给出错误:
用户不能为空。请确保WAI配置正确,
我检查了代理DB,那里没有数据。我相信我的cm_wai_conf.xml文件配置正确。我读过这篇文章,这篇文章建议WAI使用环境变量REMOTE_USER,这是我添加到windows中的,但仍然没有成功。http://sdltridionworld.com/articles/UsingPandPinDistributedEnvironments.aspx
以前有没有人经历过这个错误,并能帮上忙?如果有必要,我可以提供我的cd_wai_conf.xml文件
谢谢,你的帮助是非常感谢的,它已经把我逼疯了!
编辑:添加配置文件不会在StackOverflow中呈现,所以我在PasteBin:http://pastebin.com/tHwqhwtq上添加了它
发布于 2012-07-27 13:15:33
谢谢你们。你是对的。WAIModule在我的站点的web.config中没有正确配置。我的站点是在IIS7集成模式下运行的,因此我将其配置如下:
<system.webServer>
<directoryBrowse enabled="true" />
<modules>
<add name="TridionWAIHttpModule" type="Tridion.ContentDelivery.Web.WAI.WAIModule, Tridion.ContentDelivery" preCondition="managedHandler" />
</modules>
<validation validateIntegratedModeConfiguration="false"/></system.webServer>这给了我一个新的错误“对象引用没有设置为对象的实例”。我将AppPool更改为经典模式,并添加了以下行:
<httpModules>
<add type="Tridion.ContentDelivery.Web.WAI.WAIModule, Tridion.ContentDelivery" name="TridionWAIHttpModule" />
</httpModules>然后加载页面,分析和个性化工作100%
非常感谢你们在这里的时间。我希望这对将来的其他人有帮助。
发布于 2012-07-26 17:29:22
我已经看到这一点,当您没有一个表示ID吐露的网址,您正在使用访问网站在cd_wai_conf.xml。默认情况下,我相信这使用localhost。确保您已经为用于访问站点的任何URL定义了一个主机URL。
另外,还要检查你的WAI模块是否在webb应用程序的web.config中被正确添加。在IIS中,确保模块位于正确的位置,这取决于您是在IIS6还是更高版本,以及您的应用程序池是在经典模式还是集成模式。
https://stackoverflow.com/questions/11674707
复制相似问题