我有一个动态修改nginx配置文件(nginx.conf)的python脚本。由于nginx配置不是ini,我目前使用一些regexp来解析和修改文件内容。这是唯一的方法还是更好的方法来编程修改nginx配置存在?
nginx.conf
ini
du7egjpx1#
pip install git+https://github.com/fatiherikli/nginxparser.git
acruukt92#
NGINX Inc.从2017年开始提供一个库,它是一种“将NGINX配置转换为JSON并进行反向转换的快速可靠的方法”。它被称为crossplan,你可以通过pip获得它。
pip
pip install crossplane
使用这个工具,您可以将文件解析为JSON、反序列化、操作、序列化回JSON,然后再转换回NGINX配置文件格式。
hfsqlsce3#
似乎存在一个augeas lens,它至少支持nginx配置文件语法的一个子集,Augeas也有Python bindings。
alen0pnh4#
刚刚发现了python-nginx,它只使用Python就可以很好地工作,而且似乎根本不需要任何C或所需的Python包!可以稍微改进文档。也许我会为此发送一个拉取请求。
6jygbczu5#
现在有了nginx-conf,这是一个NPM模块,提供了对nginx配置的编程访问。
5条答案
按热度按时间du7egjpx1#
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
acruukt92#
NGINX Inc.从2017年开始提供一个库,它是一种“将NGINX配置转换为JSON并进行反向转换的快速可靠的方法”。它被称为crossplan,你可以通过
pip
获得它。使用这个工具,您可以将文件解析为JSON、反序列化、操作、序列化回JSON,然后再转换回NGINX配置文件格式。
hfsqlsce3#
似乎存在一个augeas lens,它至少支持nginx配置文件语法的一个子集,Augeas也有Python bindings。
alen0pnh4#
刚刚发现了python-nginx,它只使用Python就可以很好地工作,而且似乎根本不需要任何C或所需的Python包!可以稍微改进文档。也许我会为此发送一个拉取请求。
6jygbczu5#
现在有了nginx-conf,这是一个NPM模块,提供了对nginx配置的编程访问。