【发布时间】:2013-02-14 15:06:56
【问题描述】:
在我的一个项目中,有一些页面(例如详细信息页面)带有 vb 脚本页面模板和一些页面(例如主页)带有剃须刀。我们在组件的一个字段(命名为标题)中的文本中有 £ 符号。
在主页 £ 被编码为 ?在详细信息页面上,它是所需的,表示£。
当我在模板生成器中运行此主页时,它看起来很好 (£),并且在页面源代码中(在演示服务器上)它被编码为 ?符号。
现在我认为这个问题在出版的某个地方。我们已经为编码 UTF-8 设置了发布目标,并且两个页面(主页和详细信息)都从同一个发布目标发布,因此这些页面的行为如何不同。
即使是本网站常见的母版页也包含
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
我在 web config 中添加了下面的标签来解决这个问题。
<globalization fileEncoding="UTF-8" requestEncoding="UTF-8" responseEncoding="UTF-8"/>
通过这样做,在详情页 £ 被编码为一些乱码(?符号或矩形框)。
现在我的想法是
-问题可能是由于剃刀,但剃刀输出在模板生成器中是完美的。
-问题可能出现在发布时,但两个页面都以相同的发布目标 (UTF-8) 发布。
谁能给我一个正确的方向来解决这个问题。
【问题讨论】:
-
您可以尝试按照sdllivecontent.sdl.com/LiveContent/content/en-US/… 定义属性“-Dfile.encoding=UTF8”吗?可能您需要做的就是将 JVM 上的默认编码设置为 UTF-8。
-
别忘了这 7 个检查点:elenaserghie.blogspot.nl/2012/01/…
-
感谢 Daniel 和 Nuno 提供有用的 cmets。通过在页面级别覆盖编码来解决问题。
-
@NunoLinhares:您可以发表您的评论作为答案,以便 Ram 可以接受吗?
标签: tridion tridion-2011 tridion-content-delivery