我在system1上运行了moqui,可以使用URL http://localhost:8080/Login访问它。 尝试从其他system2(在网络中)访问它,并使用第一个系统的IP替换'localhost';它显示了第一个(登录)页面,但之后,当从system2提交页面时,URL中的IP自动变为“localhost”。我已经查看了这本书,并在框架代码中进行了搜索,但找不到与此相关的内容。
原因可能是什么,应用程序中是否有任何设置可以解决此问题?
答案 0 :(得分:3)
为webapp配置主机和端口有两个部分。一个是servlet容器,因此它知道要监听什么,另一个是Moqui Framework本身,因此它知道在生成URL时要使用什么。听起来你遇到的问题是第二个问题,即生成URL。
在你的运行时Moqui XML Conf文件中,应该有一个类似于MoquiProductionConf.xml文件中的webapp元素:
<webapp name="webroot" http-port="" http-host=""
https-port="" https-host="" https-enabled="false"
content-prefix-secure="" content-prefix-standard="" cookie-domain="">
<root-screen host=".*" location="component://webroot/screen/webroot.xml"/>
</webapp>
如果未指定@ http-host / etc属性,则将使用HttpServletRequest对象中的值。这些将根据您用于部署Moqui Framework的servlet容器的设置而有所不同。
要将其设置为显式内容,您可以使用http-host,如果需要,还可以使用https-host,http-port和https-port属性。对于虚拟主机支持,http-host和https-host属性应为空,并且应将servlet容器(及其前面的任何代理/等)配置为通过所请求的主机名。