【问题标题】:how to check Coldbox route configuration is work?如何检查冷箱路由配置是否有效?
【发布时间】:2015-09-30 05:47:42
【问题描述】:

我正在使用 Coldbox 框架开发自己的博客。我还在我的博客上添加了路由配置。我已经使用下面给出的 addRoute() 方法创建了 URL 路由。

addRoute(pattern="/login", handler="security.login", action="login");

但这也行不通,url 值也转到

www.myBlog.dev/login

我在下面直接更改了 URL(安全是处理程序,登录是操作页面)

www.myBlog.dev/index.cfm/security/login

效果很好。任何人都可以提供解决此问题的解决方案。

【问题讨论】:

  • 您是否使用 CF 内置开发网络服务器在本地运行它?
  • 是的,我在本地使用 CF11 应用服务器和 Apache Web 服务器运行。
  • 内置的webserver不支持URL重写,但是Apache支持,你检查你是否启用了mod_rewrite
  • 好的,会那样做的...
  • 感谢您的帮助,非常棒。

标签: coldfusion routes coldbox


【解决方案1】:

CF 的内置 Webserver 以及一些 J2EE Webserver 不支持原生 URL 重写。在这种情况下,CF 使用来自请求标头的path 信息并使用filename.cfm/ 之后的部分 - 所以在您的情况下security/login 得到解析,但路由/login 无法解析,因为网络服务器没有路由重定向。

由于您幸运地在本地使用 Apache,您可以通过打开 mod_rewrite http://httpd.apache.org/docs/current/mod/mod_rewrite.html 来激活 URL 重写行为,并获得与生产网络服务器相同的结果。

【讨论】:

    【解决方案2】:

    我建议使用 Commandbox: 有一个内置的 lucee 服务器,你可以用这个命令开始:

    server start --rewritesEnable
    

    您将在不到 10 秒的时间内启动服务器并启用 url 重写。

    您将在此处找到信息:http://www.ortussolutions.com/products/commandbox

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-06
      • 1970-01-01
      • 1970-01-01
      • 2013-04-06
      • 2016-07-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多