Kentico V8.2 到 V9.0 升级缺失 ~/CMSPages/GetResource.ashx

Kentico V8.2 to V9.0 upgrade missing ~/CMSPages/GetResource.ashx

我最近正在一个网站上进行我的第一次 Kentico 升级,该网站以前是别人交给我的。最初有一些提示,但我不得不说 V8.2 到 V9.0 的升级取得了一定程度的成功。我正在处理最后一个问题。最初问题出在数据库中存储的图像上,但我通过设置自定义 URL 扩展名解决了这个问题。我们在数据库中的样式 sheet 返回 404,因此整个站点都没有样式。

我做了一些挖掘,发现了以下内容:

TL;DR - 从 V8.2 升级到 V9.0,我似乎缺少 ~/CMSPages/GetResource.ashx,我不确定它从哪里得到的出发去。


环境信息

测试服务器:Windows IIS 7.5 上的 Server 2008R2 SP1 w/ .NET 4.5.2,MSSQL 2008R2 数据库后端

开发服务器:Windows8.1,带 IIS 8.5、VS 2015 和 MSSQL 2008R2 Kentico V8.2 门户网站模式

感谢您的任何想法。

谢谢!

大多数 .ashx 已移至 CMS.UIControls 程序集并进行调整以实现 IHttpHandler

这样,任何引用 Kentico 库的应用程序都可以使用处理程序,特别是 UIControls。这种方法已被使用,例如在 new MVC support in Kentico 9.

如果您需要自定义处理程序,您可以利用 GetFileHandlerAdvancedGetFileHandler 抽象 类 实现 IHttpHandler.

如果我正确阅读发行说明,他们会将文件移至 UIControls 库,您仍然可以毫无问题地使用旧参考资料。我已将我的网站从 8.0.48 升级到 9.0.1 和 9.0.4,没有任何问题。事实上,我仍然使用 /CMSPages/GetResource.ashx?scriptfile=/path/to/file.js 我相信这个变化是专门为了适应 MVC 模型。

我在 v8 中的 GetResource.ashx 上部署我的站点时收到 404。我将我的站点设置为 Web 应用程序。我的问题是我只使用 Visual Studio 部署 CMSApp。我还需要部署 CMSApp_AppCode。 https://docs.kentico.com/display/K81/Publishing+web+application+projects+from+Visual+Studio

当我从 v8.2 升级到 v9 时,我在 GetResource.ashx 上收到 500 错误。升级后我只是 re-deployed。我不知道问题出在哪里,但收到错误后,我清除了 Azure 服务器上的所有文件,然后进行了部署。这修正了我的错误。

也许这两项中的一项会对您有所帮助。