我必须从Java代码更新并向Nginx配置文件添加不同的配置设置。如果不转换为java对象并将它们写回文件,是否有简单的方法可以做到这一点?是否有任何github项目具有从代码配置nginx的所有方法?
答案 0 :(得分:0)
您可以使用此nginx-java-parser来读取,编辑和编写配置文件。
链接:https://github.com/odiszapc/nginx-java-parser
示例:
NgxConfig conf = NgxConfig.read("/etc/nginx/nginx.conf");
NgxParam workers = conf.findParam("worker_processes"); // Ex.1
workers.getValue(); // "1"
NgxParam listen = conf.findParam("http", "server", "listen"); // Ex.2
listen.getValue(); // "8889"
List<NgxEntry> rtmpServers = conf.findAll(NgxConfig.BLOCK, "rtmp", "server"); // Ex.3
for (NgxEntry entry : rtmpServers) {
((NgxBlock)entry).getName(); // "server"
((NgxBlock)entry).findParam("application", "live"); // "on" for the first iter, "off" for the second one
}