JBoss/WildFly的standalone.xml怎么配置

发布时间 - 2026-01-01 00:00:00    点击率:
standalone.xml 是 WildFly 独立模式的核心配置文件,定义服务器全部运行时行为;修改需备份并重启或 CLI 热重载,推荐优先使用管理 CLI 操作,避免直接编辑;关键配置包括网络端口、数据源、安全域、部署扫描器等,添加 JDBC 驱动支持模块安装和 JAR 部署两种方式。

`standalone.xml` 是 WildFly(以及旧版 JBoss AS)独立模式下的核心配置文件,位于 `$WILDFLY_HOME/standalone/configuration/` 目录下。它定义了服务器运行时的模块、数据源、安全域、部署扫描器、线程池、日志、网络接口、子系统等全部行为。修改前务必备份,并在修改后重启服务或使用管理 CLI 热重载。

关键原则:不要直接编辑正在运行的 `standalone.xml`;推荐优先用 ./jboss-cli.sh(Linux/macOS)或 jboss-cli.bat(Windows)操作,避免手误和格式错误。

常用配置项位置与修改方式

所有配置都包裹在 标签下,按功能划分为多个 。常见需调整的部分包括:

  • 网络接口与端口:在 中修改。例如将 HTTP 端口从 8080 改为 9090:
      → 找到
      → 或在启动时加参数:-Djboss.http.port=9090
  • 数据源(DataSource):在 内配置。需指定 JDBC 驱动、连接 URL、用户名密码、连接池参数。例如 PostgreSQL 数据源需先部署驱动模块或使用 JDBC JAR(WildFly 26+ 支持自动部署 .jardeployments/)。
  • 安全域(Security Domain):在 中定义,用于 JAAS 认证。常配合 login-module 使用,如 LdapLoginModule 或自定义类。
  • 部署扫描器(Deployment Scanner):在 中控制自动部署行为。可关闭(scan-interval="0")、修改扫描路径(path="deployments")或启用热部署(auto-deploy-zipped="true")。

添加 JDBC 驱动的两种方式

WildFly 不自带 Oracle/MySQL/PostgreSQL 驱动,需手动引入:

  • 方式一:作为模块安装(推荐用于生产)
      → 创建目录:$WILDFLY_HOME/modules/system/layers/base/com/postgresql/main/
      → 放入 postgresql-42.x.x.jarmodule.xml(声明 resource-rootdependencies
      → 在 standalone.xml *册:
  • 方式二:直接部署 JAR(开发调试快捷)
      → 将 postgresql-42.x.x.jar 复制到 $WILDFLY_HOME/standalone/deployments/
      → WildFly 自动识别并注册为驱动(文件名需含 .jar,且无 .deployed.failed 标记)

通过 CLI 安全修改配置(不手动改 XML)

CLI 是最稳妥的方式,支持事务性操作和回滚提示。示例:

  • 添加数据源:
    /subsystem=datasources/data-source=myDS:add(jndi-name="java:/jdbc/myDS", driver-name="postgresql", connection-url="jdbc:postgresql://localhost:5432/mydb", user-name="user", password="pass")
  • 启用 HTTPS:
    /core-service=management/security-realm=ApplicationRealm/server-identity=ssl:add(keystore-path="/path/to/keystore.jks", keystore-password="changeit")
    再绑定到 https socket binding
  • 重载配置(不重启):
    :reload(保存后生效)或 :reload(restart-required=false)(部分变更支持热重载)

验证与排错提示

启动时若报错,重点关注:
– XML 格式是否合法(标签闭合、属性引号、命名空间一致)
– 模块路径是否存在、module.xml 是否写对 resource-root
– 数据源中 connection-url 是否可达,驱动是否已加载(查 /subsystem=datasources/jdbc-driver=xxx:read-resource
– 日志级别设为 DEBUG 可定位子系统初始化失败原因(在 中添加 logger)

不复杂但容易忽略的是命名空间版本号——不同 WildFly 版本对应不同 subsystem 命名空间(如 datasources:5.0 vs 7.0),复制配置时务必核对当前版本文档。


# mysql  # oracle  # linux  # word  # java  # windows  # app  # 端口  # ssl  # mac  # ai  # macos 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 教你用AI将一段旋律扩展成一首完整的曲子  laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法  如何生成腾讯云建站专用兑换码?  浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  如何在Ubuntu系统下快速搭建WordPress个人网站?  如何在云服务器上快速搭建个人网站?  Laravel如何实现用户密码重置功能?(完整流程代码)  Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南  Python函数文档自动校验_规范解析【教程】  如何注册花生壳免费域名并搭建个人网站?  如何利用DOS批处理实现定时关机操作详解  如何用免费手机建站系统零基础打造专业网站?  网站制作企业,网站的banner和导航栏是指什么?  html5audio标签播放结束怎么触发事件_onended回调方法【教程】  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  Laravel如何处理CORS跨域请求?(配置示例)  微信公众帐号开发教程之图文消息全攻略  Laravel如何使用Vite进行前端资源打包?(配置示例)  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  Python3.6正式版新特性预览  Laravel如何使用Livewire构建动态组件?(入门代码)  如何在建站之星网店版论坛获取技术支持?  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  详解Oracle修改字段类型方法总结  Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  javascript如何操作浏览器历史记录_怎样实现无刷新导航  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  PythonWeb开发入门教程_Flask快速构建Web应用  Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】  如何快速建站并高效导出源代码?  Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理  PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口  JavaScript如何实现继承_有哪些常用方法  Laravel如何为API编写文档_Laravel API文档生成与维护方法  laravel怎么使用数据库工厂(Factory)生成带有关联模型的数据_laravel Factory生成关联数据方法  南京网站制作费用,南京远驱官方网站?  iOS发送验证码倒计时应用  Laravel的.env文件有什么用_Laravel环境变量配置与管理详解  网站制作大概多少钱一个,做一个平台网站大概多少钱?  如何在景安云服务器上绑定域名并配置虚拟主机?  手机网站制作与建设方案,手机网站如何建设?  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复  如何在云主机上快速搭建多站点网站?  Laravel如何实现多对多模型关联?(Eloquent教程)  ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】