2008-10-25 10 views
10

Cualquier lib de Python para analizar archivos de configuración de Apache o si no es Python, ¿alguien sabe esto en otros idiomas (perl, php, java, C#)? Como podré reescribirlos en python. Existen¿Alguna lib de Python para analizar archivos de configuración de Apache?

+0

Preguntas que nos piden para recomendar o encontrar un libro, herramienta, biblioteca de software, tutoriales u otro recurso fuera de las instalaciones son fuera del tema de desbordamiento de pila, ya que tienden a atraer respuestas obstinado y spam. – GhostCat

+0

A veces incluso las respuestas obstinadas son buenas cuando no tienes nada para llevar. Ahora ya no necesito eso, ya que la pregunta fue formulada en el pasado, pero a veces es útil obtener recomendaciones incluso si son obstinadas. – daniels

+0

Digámoslo así: no sé si esta pregunta fue válida hace 9 años. Pero estoy seguro de que se cerraría si se lo pidieran hoy; ya que claramente está violando la regla de "no recomendaciones". Y tu ves lo que sucede aquí es que todas estas respuestas son (y en realidad solo pueden ser) ** solo ** enlaces. Entonces, tarde o temprano ... esos enlaces podrían romperse; y luego la respuesta se vuelve inútil. – GhostCat

Respuesta

7

he encontrado una interesante analizador de configuración de Apache para el pitón aquí: http://www.poldylicious.de/node/25

El Apache Config Analizador mencionado no está documentado, pero funciona.

+0

¿Cómo usar el módulo que señaló? – Anand

1

bibliotecas Sin Python, que yo sepa, pero aquí hay un Perl uno: http://packages.debian.org/sid/libapache-configfile-perl

Package: libapache-configfile-perl 
Priority: optional 
Section: interpreters 
Installed-Size: 124 
Maintainer: Michael Alan Dorman 
Version: 1.18-1 
Depends: perl (>= 5.6.0-16) 
Description: Parse an Apache style httpd.conf configuration file 

This module parses the Apache httpd.conf, or any 
compatible config file, and provides methods for 
you to access the values from the config file. 

Si vuelve a escribir en Python, por favor, actualice su puesto de mencionar el nombre de su paquete en PyPI! :)

0

ZConfig, creo, se enviaba con un esquema para analizar archivos de configuración de Apache; ya no parece, pero está orientado a analizar esos tipos de archivos y convertir la configuración en un objeto de Python. Un vistazo rápido a la documentación sugiere que no sería muy difícil configurar un esquema ZConfig que corresponda a las opciones de Apache que quiera analizar y validar.

http://pypi.python.org/pypi/ZConfig/2.6.0

3

grupo de Tecnologías Emergentes de Red Hat ha Augeas (escrito en C, pero con enlaces Python disponibles), una herramienta de configuración del sistema genérico con "lentes" para leer y escribir varios formatos de archivos de configuración diferentes. Consideraría investigar la disponibilidad de una lente para Apache.

+0

No existe lente para los archivos de configuración de Apache. – Teddy

+1

Hay una lente Httpd ahora. –

+1

En Debian/Ubuntu, utilizando la biblioteca pypi https://pypi.python.org/pypi/python-augeas parece confiar en que https://launchpad.net/ubuntu/+source/augeas está instalando primero en el sistema de destino . – ThorSummoner

1

También se lanzó un nuevo analizador.

todavía carece de documentación, sin embargo, es bastante sencillo de entender.


Ejemplo

import apache_conf_parser 
import pprint 

DEFAULT_VHOST = '/etc/apache2/sites-available/000-default.conf' 

vhost_default = apache_conf_parser.ApacheConfParser(DEFAULT_VHOST) 

print vhost_default.nodes 
print vhost_default.nodes[0].body.nodes 

pprint.pprint( 
    { 
     i.name: [i.arguments for i in vhost_default.nodes[0].body.nodes] 
    } 
) 
+1

Pude hacer que esto funcionara. Tuve que usar mucha ayuda interactiva() 'y' dir() 'y' .__ dict__', pero eso también es lo que hace que Python sea increíble. – ThorSummoner

Cuestiones relacionadas