【问题标题】:Can clean URLs be achieved in a pure ColdFusion solution?可以在纯 ColdFusion 解决方案中实现干净的 URL 吗?
【发布时间】:2011-01-25 13:46:18
【问题描述】:

我们需要估计一个基于 ColdFusion 技术的门户。我们没有关于托管环境(可能是 Windows 或 Linux)的信息。

要求的功能之一是干净的 URL。有谁知道这是否可以通过纯 ColdFusion 解决方案来实现,或者这是否总是与 Web 服务器相关?我知道 IIS7 有很好的扩展来启用干净的 URL,但恐怕我们不能依赖这些。

【问题讨论】:

  • 好吧,如果您只打算使用 ColdFusion,它可以可能完成,但它会有点工作。当然,这取决于您要做什么。
  • 你的意思是你想要搜索引擎友好的网址?这更像是一个面向 Web 服务器的解决方案/问题,而不是一个冷融合的解决方案/问题。但是是的,它可以做到,但有效地做到了,我不这么认为。在 Apache 和 IIS 中做起来要容易得多。

标签: coldfusion clean-urls


【解决方案1】:

你可以使用ColdFusion的Application.cfconMissingTemplate()的方法来达到这个效果。如果您想拥有 .cfm 以外的扩展名,则需要进行一些 Web 服务器配置以使 ColdFusion 服务于其他扩展名和目录路径(例如 /path/to/something/)需要配置为具有标准默认文档(例如 index.cfm )。 Ben Nadel has a blog post that covers this idea extensively - 一定要检查 cmets。

请注意,IIS 7Apache 都有 URL 重写模块(假设它们分别是 Windows 和 Linux 中的 Web 服务器)。所以在这种情况下,如果您知道您的 URL 模式,那么该模块是一条更简单的路线。但是,如果模式是动态的,单独的 ColdFusion 可能是更好的,如果更复杂的路径,您将需要配置 Web 服务器,正如我在上面解释的那样。

【讨论】:

  • 谢谢,该站点将托管在一个非常受限制的环境中,我不确定我们是否会让他们更改 Web 服务器配置,这就是为什么我想使用纯 ColdFusion 解决方案,但是我已经猜到,对于目录路径,无论如何你都需要他们的一些善意......
【解决方案2】:

另一种选择。

查看 Ray Camden (www.coldfusionjedi.com) 的“blogCFC”...它使用纯 CF 方法处理 SES url,而没有缺少模板方法。

网址看起来像 /blabh.com/index.cfm/something/somethingelse

中间的 .cfm 不是形式上的 - 但它运行良好,而且他的博客软件在索引引擎上得到了很好的认可。我用它。

还有一个选项是在网络服务器上使用 404 处理程序。这确实需要一些配置 - 但只需要在一个地方,您不必为 mod_rewrite 之类的过滤器编写规则...但同样,它可能如果您有限制性托管合同,则超出您的能力范围。这是有关该主题的帖子。

http://www.coldfusionmuse.com/index.cfm?mode=entry&entry=8F4658E4-0763-5FB7-67D23B839AB74005

-马克

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-20
    • 1970-01-01
    • 2016-11-26
    • 2010-09-18
    • 2011-04-16
    • 2011-07-12
    • 2019-07-02
    • 2013-08-19
    相关资源
    最近更新 更多