有什么好的方法可以从python中以编程方式更改nginx配置文件吗?

nkkqxpd9  于 2023-01-12  发布在  Nginx
关注(0)|答案(5)|浏览(279)

我有一个动态修改nginx配置文件(nginx.conf)的python脚本。由于nginx配置不是ini,我目前使用一些regexp来解析和修改文件内容。这是唯一的方法还是更好的方法来编程修改nginx配置存在?

du7egjpx

du7egjpx1#

  1. https://www.npmjs.com/package/nginx-conf
    1.您可以使用PyNginxConfig Parser.http://code.google.com/p/pynginxconfig/source/browse/pynginxconfig.py#208此实现与原始实现非常接近。
    1.还有ServerMgr,它不是一个真正的解析器,只允许基本的Map。
    1.最后但并非最不重要的,实际上是第一个,因为基于pyparser:https://github.com/fatiherikli/nginxparser
    pip install git+https://github.com/fatiherikli/nginxparser.git
acruukt9

acruukt92#

NGINX Inc.从2017年开始提供一个库,它是一种“将NGINX配置转换为JSON并进行反向转换的快速可靠的方法”。它被称为crossplan,你可以通过pip获得它。

pip install crossplane

使用这个工具,您可以将文件解析为JSON、反序列化、操作、序列化回JSON,然后再转换回NGINX配置文件格式。

hfsqlsce

hfsqlsce3#

似乎存在一个augeas lens,它至少支持nginx配置文件语法的一个子集,Augeas也有Python bindings

alen0pnh

alen0pnh4#

刚刚发现了python-nginx,它只使用Python就可以很好地工作,而且似乎根本不需要任何C或所需的Python包!可以稍微改进文档。也许我会为此发送一个拉取请求。

6jygbczu

6jygbczu5#

现在有了nginx-conf,这是一个NPM模块,提供了对nginx配置的编程访问。

相关问题