Ayant eu un serveur Apache avec un fichier de configuration des Vhost Apache de plus de 15000 lignes, c’était devenu rapidement ingérable. J’ai donc réalisé ce script en Python pour le segmenter en différents fichiers. Pour chaque vhost avec Servername = domaine.com, on créé un fichier domaine.conf. De la sorte, si on a un vhost domaine.fr, il sera placé dans le même fichier que domaine.com. Regroupant ainsi les vhost par domaine sans le TLD et donc partiellement par client.
#!/usr/bin/env python # Convertit un fichier de vhost Apache # Au format 1 fichier par vhost from tempfile import * import os import shutil import re import string # Fichier contenant les vhosts apache a parser : fd = open('clients.conf', 'r') lines = fd.readlines() fd.close() # Bool : stock si un fichier stockant le contenu d'un vhost est ouvert ou non fichierouvert = 0 # Nom du VHOST en cours de traitement nomvhost = "" # Bool stock si le nom du vhost a ete trouve. # Le nom du vhost correspond a l entree ServerName # évite de faire une recherche de chaine inutile nomtrouve = 0 nombretotalvhosts = 0 for line in lines: # Si une ligne commence par "
la mise en forme etant imporante dans les boucles conditionnelles n’est plus apparante. il manque le fichier source.
il semble qu’il y ai une erreur avec nddsanspoint[0] qui n’a pa été declarer depuis le debut du script.
seul dans les derniere lignes, nous voyons la declaration de tld et de ndddsanspoint
pouvez vous m’en dire plus?
salutation