首先感谢Open Flash Chart开发小组为我们提供了如此强大的Web Chart工具,更要感激Xiao Yifang为我们制作了.net环境下的封装组件。

大家在IIS7下部署Xiao的组件时,一般遇到的问题是IO拒绝访问,500错误等。下面就这些问题作一个简短说明。

Open Flash Chart的.Net组件使用了IHttpHandler,除了在Web.Config中进行配置外,需要在IIS中进行IHttpHandler注册。

IIS配置:

IIS的应用程序池请采用经典模式(理论上集成模式也行,只是没有亲测)。

重要提示:如果系统支持64位,请设置IIS应用程序池的“启用 32位应用程序”设置成“True”,我就是忽略了这里,结果一直配置失败,懊恼了好几天。(附图)

Open Flash Chart的IIS7应用程序配置

Web.Config的配置如下:

<system.web>
  <httpHandlers>
    <add verb="*" path="ofc_handler.aspx" type="OpenFlashChart.WebHandler.ofcHandler, OpenFlashChart" />
  </httpHandlers>
</system.web>

<system.webServer>
  <handlers>
    <add name="OpenFlashChart" verb="*" path="ofc_handler.aspx" type="OpenFlashChart.WebHandler.ofcHandler, OpenFlashChart"
              modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll"/>
  </handlers>
</system.webServer>

注意:老版本的OpenFlashChart组件名称为ofc_handler.ofc,请将上面的ofc_handler.aspx进行替换。

关于<system.webServer>这个节点是在IIS7中出现的。除了按上面的方法直接在Web.Config中进行手工配置外,我们也可以直接通过IIS7的“处理程序映射”功能进行配置,IIS7会自动在Web.Config中添加上面的handler配置。方法如下:

点击Web站点,选择功能视图,打开IIS配置中的“处理程序映射”,在右侧操作栏中点击“添加脚本映射...”,请求路径填写“ofc_handler.aspx”(老版本请填写“*.ofc”),可执行文件请填写“C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll”,名称请填写“OpenFlashChart”,点击确定。(附图)