runtime - 在 Moqui 中更改默认端口
问题描述
Moqui 框架版本:2.1.3
框架在默认端口 8080 上运行很好,我想更改默认端口,我确实阅读了https://www.moqui.org/m/docs/framework/Run+and+Deploy#a2.RuntimeDirectoryandMoquiConfigurationXMLFile 其中指出> “每个都可以是系统环境变量(带下划线)或 Java 属性(带下划线或点),使用 -D 命令行参数。
我确实发现在 MoquiDefaultConf.xml 中引用了 webapp_ 变量,如上述材料中所述,并尝试使用以下启动命令 >
$sudo nohup java -Dwebapp_http_host=localhost -Dwebapp_http_port=9080 -Dwebapp_https_port=9443 -jar moqui.war conf=conf/MoquiDevConf.xml &
但是上面的命令似乎并没有改变端口,Moqui 仍然在默认端口 8080 上运行,我可能缺少什么?
我还尝试了更新 MoquiDevConf.xml 中的 webapp 标记的解决方案,如通过 SSL 在 Tomcat 上运行 Moqui(设置 http-port 和 htts-port)中提到的 - 返回代码 302没有任何乐趣,
感谢任何指针,我真的被卡住了
解决方案
您提到的环境变量或 Java 属性用于设置构建 URL 时要使用的端口。这些是用于访问服务器的外部端口,如果使用负载平衡器或反向代理,则可能与运行 servlet 容器的端口不同。有关更多信息,请参阅:
https://moqui.org/m/docs/framework/Run+and+Deploy#EnvironmentVariables
如果您使用嵌入式 Jetty 服务器运行 Moqui,您可以使用 port 参数指定它侦听的端口,如运行和部署文档的可执行 WAR 文件部分所述:
https://moqui.org/m/docs/framework/Run+and+Deploy#a3.ExecutableWARFile
请注意,嵌入式 Jetty 服务器可以在生产中使用,但它不支持 https,并且旨在用于将请求转发到嵌入式 Jetty 服务器的反向代理(如 nginx 或 Apache httpd)后面。
如果通过将 WAR 文件放入 Servlet 容器(即作为实际的 WAR 文件,不将其视为可执行的 JAR 文件)来部署 WAR 文件,则端口配置将使用 Servlet 容器(Tomcat、Jetty 等)完成。
推荐阅读
- php - 组合数组并制作独特的变量
- javascript - Ajax 请求在 Yii2 中不起作用
- c++ - 从另一个类 C++ 的构造函数初始化二维数组
- php - 如何在 PHP mongodb 驱动程序中比较 mongodb 中同一表的 2 列?
- youtube-api - Youtube iframe api 自动播放不适用于 chrome 和视频分辨率设置不适用于所有浏览器
- javascript - 如何在 mouseleave 时停止由 mouseenter 触发的 setInterval?
- python - 插值 lambda 难以理解
- android-studio - 如何在 Android Studio 中更新项目树
- reactjs - 在动态 HTML 的子元素中添加属性
- javascript - 如何使用范围类型的输入显示当前值