Python脚本--Apache配置文件
生活随笔
收集整理的這篇文章主要介紹了
Python脚本--Apache配置文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
通過python腳本來修改apache的配置文件:
該腳本可以解析apache配置文件,找到VirtualHost部分,替換DocumentRoot。
#!/usr/bin/pythonfrom?cStringIO?import?StringIO import?revhost_start?=?re.compile(r'<VirtualHost\s+(.*?)>') vhost_end?=?re.compile(r'</VirtualHost>') docroot_re?=?re.compile(r'(DocumentRoot\s+)(\S+)')def?replace_docroot(conf_string,?vhost,?new_docroot):'''yield?new?lines?of?an?httpd.conf?file?where?docroot?lines?matchingthe?specified?vhost?are?replaced?with?the?new_docroot'''conf_file?=?StringIO(conf_string)in_vhost?=?Falsecurr_vhost?=?Nonefor?line?in?conf_file:vhost_start_match?=?vhost_start.search(line)if?vhost_start_match:curr_vhost?=?vhost_start_match.groups()[0]in_vhost?=?Trueif?in_vhost?and?(curr_vhost?==?vhost):docroot_match?=?docroot_re.search(line)if?docroot_match:sub_line?=?docroot_re.sub(r'\1%s'?%?new_docroot,?line)line?=?sub_linevhost_end_match?=?vhost_end.search(line)if?vhost_end_match:in_vhost?=?Falseyield?lineif?__name__?==?'__main__':import?sysconf_file?=?sys.argv[1]vhost?=?sys.argv[2]docroot?=?sys.argv[3]conf_string?=?open(conf_file).read()for?line?in?replace_docroot(conf_string,?vhost,?docroot):print?line,轉載于:https://blog.51cto.com/brucemj/1439819
總結
以上是生活随笔為你收集整理的Python脚本--Apache配置文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 缓存网络请求的结果
- 下一篇: 怒卸python3.4.1