首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过CommandBox内部服务器返回的冷盒站点与来自IIS的同一站点服务器不同

通过CommandBox内部服务器返回的冷盒站点与来自IIS的同一站点服务器不同
EN

Stack Overflow用户
提问于 2020-02-10 00:27:02
回答 2查看 163关注 0票数 2

我刚刚开始研究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呈现的(即使我执行了“服务器停止”),但变量似乎并不正确。

有没有人经历过这种情况,或者知道我做错了什么?

两个屏幕截图中该页面的代码

代码语言:javascript
复制
<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>

EN

回答 2

Stack Overflow用户

发布于 2020-02-10 19:22:13

确保您使用的是相同的web上下文:在第一张图片中,您访问的是127.0.0.1,在第二张图片中,您访问的是FQDN。只有当您在servlets主机配置级别定义一个别名时,才能使用相同的上下文。交叉检查AccessLogs,如果可能的话,webcontext同样会被你的客户端击中。

票数 0
EN

Stack Overflow用户

发布于 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的提交者。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60138758

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档