编译为.NET 4.0时,托管Fusion URL重写器500错误

时间:2010-09-23 16:31:50

标签: asp.net-mvc-2 url-rewriting

我正在尝试将.net 2.0应用程序带入.net 4.0世界。我们将保留webforms并在MVC2中添加新功能。

虽然我们可以将所有托管的聚合重写重做为mvc路由,但目前我只是将新路由添加到MF并让它处理URL格式和控制器的URL重写任务。

我在.net 3.5上工作了,但是当Web应用程序编译为4.0并且应用程序池设置为4.0时,任何url都会抛出500错误。事件日志中没有任何有趣的内容。

我尝试下载源代码并将MF编译为4.0,但没有骰子。有关使此工作的任何建议?有没有办法让MF输出有助于识别问题的详细错误?

1 个答案:

答案 0 :(得分:1)

我实际上是Managed Fusion Url Rewriter的开发者。 Url重写器不需要编译为4.0以在4.0下工作。您可以将其编译为2.0以下,它仍然适用于IIS和.NET 4.0上的集成管道。您可以从这里下载最新的资源:

http://github.com/managedfusion/managedfusion-rewriter/tree/master/Source/

我还创建了一个项目,允许您在重写器配置日志中定义MVC路由:

http://github.com/managedfusion/managedfusion-rewriter-contrib/tree/master/Source/

可以在这里阅读有关该项目的更多信息:

http://coderjournal.com/2010/03/editable-mvc-routes-apache-style/

对于500个错误,我可能需要更多信息,您可以通过将以下内容添加到重写器顶部来更新您的帖子以包含可能从重写器启用的日志:

RewriteLog "log.txt"
RewriteLogLevel 9

这应该有助于我们更好地诊断500错误的来源。但考虑到上面所写的所有内容,我担心你可能无法理解路由和重写之间的区别,许多开发人员都没有这样做,因为它们在完成的方面有点类似。这就是为什么我写了以下帖子:

http://coderjournal.com/2010/03/difference-between-routing-rewriting/

如果你想在论坛上从StackOverflow离线工作,我很乐意为你提供帮助。

http://urlrewriter.codeplex.com/Thread/View.aspx?ThreadId=228348