我刚刚开始研究ColdBox,刚刚通过了快速入门(https://coldbox.ortusbooks.com/getting-started/getting-started-guide)并将#getSetting("APPNAME")#添加到hello.index中
在我的开发机器上使用CommandBox "start server“,它在端口55700启动它的内部服务器(它无法脱离防火墙),我得到了预期的输出(见第一张图),它从.env文件中拉出了APPNAME
使用我的典型设置,其中IIS服务器上的所有内容都在端口80或443上提供服务),APPNAME来自config/Coldbox.cfc (见第二个图像)。
尽管页面都是通过CommandBox中的IIS呈现的(即使我执行了“服务器停止”),但变量似乎并不正确。
有没有人经历过这种情况,或者知道我做错了什么?
两个屏幕截图中该页面的代码
<cfoutput>
<h1>hello.index</h1>
#now()#
<div class="alert alert-danger">#getSetting("APPNAME")#</div>
<div class="alert alert-success">#getSetting("ENVIRONMENT")#</div>
<cfdump var="#application#" expand="false">
</cfoutput>


发布于 2020-02-10 19:22:13
确保您使用的是相同的web上下文:在第一张图片中,您访问的是127.0.0.1,在第二张图片中,您访问的是FQDN。只有当您在servlets主机配置级别定义一个别名时,才能使用相同的上下文。交叉检查AccessLogs,如果可能的话,webcontext同样会被你的客户端击中。
发布于 2020-02-13 13:55:51
在我的开发机器上使用CommandBox "start server“它在端口55700启动它的内部服务器(它不能脱离防火墙)
作为一个讨论问题,CommandBox将使用您告诉它的任何端口。por 55700 (它决定在没有明确设置的情况下使用的随机端口)是否可以在防火墙外部访问取决于防火墙的设置。
和我得到了预期的输出(参见第一张图片),其中它从.env文件中提取APPNAME
ColdBox没有这样的内置函数来从.env文件中提取应用程序名称。事实上,Coldbox不会从.env文件中取出任何东西。现在有各种冷箱和CommandBox模块或手动代码,可以从.env文件加载设置,但您没有提到使用它们,也没有展示您的代码。
使用我的典型设置的
,其中IIS服务器上的所有内容都在端口80或443上提供服务)
请原谅我们的无知,但这里没有人知道您的典型设置是什么。您是否正在使用IIS通过HTTP或AJP端口代理CommandBox的web服务器?您是否通过其他方式安装了Lucee?
APPNAME来自config/Coldbox.cfc (见第二张图片)。
appname总是来自ColdBox.cfc,除非您已经显式地配置了一些东西,使它不能这样做。如果您认为应该从其他地方加载appname,请分享您的代码/设置的这一部分。
在CommandBox中,尽管页面都是通过IIS呈现的(即使我做了“服务器停止”),
,
同样,您的服务器是如何配置的?你提到要阻止CommandBox。您是否有多个CommandBox服务器在运行?你是不是达到了你期望的目标?如果这是通过IIS提供服务的站点,那么它是否与CommandBox绑定?
变量似乎不正确。
在这里无法帮助您,因为您还没有共享任何代码或配置详细信息,以说明如何在您的代码中定义此设置。
有没有人经历过这种情况,或者知道我做错了什么?
我担心这里没有足够的信息来知道你在做什么,更不用说你做错了什么。
为了在评论中回答你的几个问题...
和将来是否必须在生产服务器上安装CommandBox?
仅当您想要使用CommandBox托管站点时。对于在CommandBox上运行的ColdBox站点,没有相关性或要求。CommandBox是一个简单的命令行界面,它可以非常容易地启动和停止CF服务器(以及其他功能)。许多人在CommandBox上托管生产站点,但这根本不是必需的。
我希望这个网站的工作方式与服务器上的所有其他CF网站一样,即使这将是唯一的冷盒。
ColdBox站点没有什么特别之处--它的工作方式与任何其他ColdFusion应用程序一样。我怀疑你认为CommandBox是一种需求,这让你自己感到困惑。许多人使用CommandBox进行本地开发,因为它既快又容易,然后出于熟悉,将其部署在ColdFusion或Lucee的“传统”安装上。
免责声明:我是CommandBox的首席开发人员,也是ColdBox MVC的提交者。
https://stackoverflow.com/questions/60138758
复制相似问题