【问题标题】:Captcha image is not rendering in sitecore web form for marketers验证码图像未以 Sitecore Web 表单呈现给营销人员
【发布时间】:2015-01-20 13:03:46
【问题描述】:

我正在使用“Web Forms for Marketingers 2.5 rev. 141014”,同时创建表单我正在使用 Captcha 字段,但是验证码图像未在前端呈现

Screenshot Link

我做错了什么??

【问题讨论】:

  • 您的 CM 和前端实例是否在 LiveMode(即单个 IIS 实例)上运行?或者您是否已将 WFFM CD 包部署到您的前端服务器?

标签: webforms sitecore captcha web-forms-for-marketers


【解决方案1】:

您是否按照安装后步骤中的要求修改了 Web.config?

  1. 将以下节点添加到 Web.config:
    • 对于 IIS 6.x 在 configuration\system.web\httpHandlers 节点下
    • 适用于 IIS 7.x 及更高版本,位于 configuration\system.webServer\handlers 节点下

如果你这样做了,你会同时使用 WFFM 和 WeBlog 模块吗?

问题在于微博使用 preprocessRequest 站点核心管道来解析 CaptchaImage。此管道未准备 Session,因此 WFFM 验证码(默认将数据存储在会话中)在此类设置中不起作用。

解决办法就是去掉

<preprocessRequest>
  <processor patch:before="*[1]" type="Sitecore.Modules.WeBlog.Pipelines.CaptchaProcessor,Sitecore.Modules.WeBlog"/>
</preprocessRequest>

来自 WeBlog.config 文件。

【讨论】:

  • 但是从WeBlog.config 中删除这一行会丢失Weblog 的哪些功能?
【解决方案2】:

发现这篇由 Jonathan Robbins Web Forms for Marketers Captcha not displaying 撰写的文章解决了我的问题

事实证明,在安装或更新此版本的 Web 表单时,需要将其他配置添加到 web.config。

如果您的站点在 II7 上运行并且管理管道模式设置为集成,您将需要在 web.config 配置/system.webServer/handers 中以下位置的底部添加这些配置节点

<add name="CaptchaImage" verb="*" path="CaptchaImage.axd" type="Sitecore.Form.Core.Pipeline.RequestProcessor.CaptchaResolver, Sitecore.Forms.Core" />
<add name="CaptchaAudio" verb="*" path="CaptchaAudio.axd" type="Sitecore.Form.Core.Pipeline.RequestProcessor.CaptchaResolver, Sitecore.Forms.Core" />

如果您的站点在 IIS6 上运行,或者您的应用程序池的托管管道是 Classic,则需要将这两个节点添加到 web.config 配置中的以下路径/system.webServer/httpHanders

<add name="CaptchaImage" verb="*" path="CaptchaImage.axd" type="Sitecore.Form.Core.Pipeline.RequestProcessor.CaptchaResolver, Sitecore.Forms.Core" />
<add name="CaptchaAudio" verb="*" path="CaptchaAudio.axd" type="Sitecore.Form.Core.Pipeline.RequestProcessor.CaptchaResolver, Sitecore.Forms.Core" />

【讨论】:

    【解决方案3】:

    感谢您的建议,但问题在于 dll 冲突。当我第一次安装 WFFM 模块(包含 Captcha dll),然后在安装 WeBlog 模块(也包含 Captcha dll)后,dll 被覆盖了。所以尝试使用assembly redirect 解决了这个问题。再次感谢您的贡献。

    【讨论】:

      【解决方案4】:

      如果您使用的是 MVC,则 Microsoft Captcha 控件可能存在问题。 Sitecore 发布了一个修补程序,您可以通过http://support.sitecore.net 联系支持人员获得该修补程序

      http://sdn.sitecore.net/Products/Web%20Forms%20for%20Marketers/Web%20Forms%20for%20Marketers%202,-d-,5/Release%20Notes.aspx

      【讨论】:

      • 你能提供给我修复吗?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多