我目前正在从 Tridion R5.3 迁移到 Tridion 2011。我在通过演示服务器提供某些页面时遇到问题。作为参考,我所有的网页都是经典的 ASP,我在 IIS7.5 上运行它们。
我有一个页面位于http://www.example.com/widget/index.asp
。当我第一次访问该页面时,我得到一个The page cannot be displayed because an internal server error has occurred.
,如果我然后刷新页面它加载正常,如果我第三次刷新页面它会出现错误。该页面适用于所有其他请求。
我在我的网站上启用了失败的请求跟踪,但我收到了错误
ASP_LOG_ERROR
LineNumber: 87
ErrorCode: 800706be
Description:
注意没有描述。
被调用的代码是
85: Dim objTranslationPageLink
86: Set objTranslationPageLink = Server.createObject("cd_link.PageLink")
87: strTranslatedPageLink = objTranslationPageLink.GetLinkAsString("tcm:0-12-1", "tcm:12-123456-64", "", "", "TranslationFound", False)
88: Set objTranslationPageLink = Nothing
看起来创建对象没有问题cd_link.PageLink
,只是在调用GetLinkAsString(...)
函数时。
我cd_link.PageLink
在许多其他页面中使用该对象没有任何问题,但似乎使用此特定代码的页面会遇到问题。
我在想这可能与缓存页面有关,但是我关闭了 ASP 页面的缓存(IIS7 > ASP > 服务 > 缓存属性)并且仍然存在问题。
有任何想法吗?
编辑1
该代码在 Windows Server 2003 IIS6 上运行良好。我试图让它在 Windows Server 2008 IIS7 上运行。
编辑2
看来该页面正在创建很多cd_link.ComponentLink
对象cd_link.PageLink
。我有一个测试页面,我在其中创建了 10 个 ComponentLink 对象,我得到了错误(每隔一个页面),但是如果我将其减少到 5 个 ComponentLink 对象,它每次都有效。
编辑3
我的 cd_core.xxxx.xx.xx.log 有以下错误
2012-11-02 11:55:34,027 错误 XMLConfigurationReader - 使用架构“schemas/cd_link_conf.xsd”验证文件“cd_link_conf.xml”时出错。cvc-complex-type.3.2.2:属性“DefaultRootLocation”不允许出现在元素“Publications”中。
编辑4
谢谢你陪我。我的 cd_link_config 问题已修复,似乎没有相关性。现在我的四个日志文件(cd_core、cd_deployer、cd_monitor、cd_transport)中的任何一个都没有错误,但原始问题仍然存在。