刚开始使用coldfusion& fusebox有点(这是我在这里问的第二个问题,其中很多回复提到不再支持fusebox并且可能有更好的框架 - 所以我看着ColdBox和FW / 1 - 但仍然想问这个Fusebox问题!)。
我试图了解Fusebox 5.5(最新版本,正在使用)是否支持任何类型的基于约定的URL映射。我有noxml骨架应用程序,它启动并运行在urL:
http://127.0.0.1:8500/noxml
现在我已经看到这默认是在app控制器中执行welcome函数 - 我想知道的是内置的是基于约定的url映射,所以我可以像这样定义我的url:
http://127.0.0.1:8500/noxml/app/welcome
(例如{appname} / {controllername} / {functionname})
我也看到了这个问题:How do I create Search Engine Safe URLs in Fusebox 5.1 noxml?并添加了建议的基本配置:
FUSEBOX_PARAMETERS.queryStringStart = "/";
FUSEBOX_PARAMETERS.queryStringSeparator = "/";
FUSEBOX_PARAMETERS.queryStringEqual = "/
我可以点击这个网址:
http://127.0.0.1:8500/intranet/index.cfm/fuseaction/app.welcome
但显然,那仍然是一个非常丑陋的网址..
我想要的甚至是开箱即用的保险箱5.5? (保险丝盒网站404上的文档和社区链接..)
答案 0 :(得分:2)
如果你想做最纯粹的SES URL(http://site.com/controller/action),它需要删除index.cfm,这涉及到必须在Web服务器端进行一些URL重写。如果你想删除index.cfm
,我所知道的框架都不能避免URL重写IIS7.5使用web.config或使用内置向导本机支持它; Apache通过.htaccess提供mod_rewrite。 IIS6 / 7有第三方产品。
如果您需要更多电量/控制,您还可以使用此处提到的coldcourse(http://coldcourse.riaforge.org)结帐:
How do I create Search Engine Safe URLs in Fusebox 5.1 noxml?
正如海报所提到的,显然在FB 5.5中有内置的URL重写,但我并不熟悉5.5。