Быстрое конфигурирование веб-сервера с помощью Python
В прошлой статьей мы научились читать файлы и записывать в них. Теперь, на основе этих знаний, начнём реализовывать автоконфигуратор для серверов Nginx, Apache на Python.
В прошлой статье, я делил содержимое файл на массив из двух элементов (на то что идет до переменной и после) и необходимые данные вставлял между ними, но этот способ не подойдёт для более сложных задач.
Для примера я создал простейший конфиг для nginx:
server{
listen 80;
server_name %domain%;
root /var/www/%domain%;
}
Где %domain% - переменная которую будем заменять.
Как всегда, откроем файл, запишем содержимое в переменную и закроем его:
f = open('nginx.txt', 'r')
data = f.read()
f.close()
Получим необходимые данные от пользователя и запишем их в переменную:
input = input('Введите домен сайта: ')
Далее заменим переменную на полученные данные. Для этого воспользуемся функцией replace
data = data.replace('%domain%', input)
Думаю тут все просто. Запишем в переменную изменённые данные. В функции первый аргумент - это переменная которую необходимо заменить, а второй аргумент - текст для замены.
Далее создаём файл, запишем в него данные и закроем:
new_file = open(input+'.conf', 'w')
new_file.write(data)
new_file.close()
Демонстрация:
В следующей статьей мы сделаем конфигуратор наш более гибким, дадим возможность выбора: Nginx или Apache.
Спасибо за внимание!
Материал подготовлен автором @zheev