Apache Web Server¶
Installation¶
apt install apache2
Konfiguation¶
TODO: ServerAdmin ändern Anleitung einfügen.
Salt State File¶
apache2.sls
# Apache Web Server
{% set apache = salt['grains.filter_by']({
'Debian': {'pkg': 'apache2', 'srv': 'apache2'},
}, default='Debian') %}
{{ apache.pkg }}:
pkg.installed:
- name: {{ apache.pkg }}
service.running:
- name: {{ apache.srv }}
- enable: True
- watch:
- file: change-documentroot
- file: change-documentroot-ssl
- file: fix-serveradmin
- file: fix-serveradmin-ssl
- require:
- pkg: {{ apache.pkg }}
{% if grains['os_family'] == 'Debian' %}
change-documentroot:
file.replace:
- name: /etc/apache2/sites-available/000-default.conf
- pattern: 'DocumentRoot\ (.*)$'
- repl: 'DocumentRoot {{ pillar['apache']['documentroot'] }}'
- not_found_content: 'DocumentRoot {{ pillar['apache']['documentroot'] }}'
- require:
- pkg: {{ apache.pkg }}
change-documentroot-ssl:
file.replace:
- name: /etc/apache2/sites-available/default-ssl.conf
- pattern: 'DocumentRoot\ (.*)$'
- repl: 'DocumentRoot {{ pillar['apache']['documentroot'] }}'
- not_found_content: 'DocumentRoot {{ pillar['apache']['documentroot'] }}'
- require:
- pkg: {{ apache.pkg }}
fix-serveradmin:
file.replace:
- name: /etc/apache2/sites-available/000-default.conf
- pattern: 'ServerAdmin\ (.*)$'
- repl: 'ServerAdmin {{ pillar['apache']['serveradmin'] }}'
- not_found_content: 'ServerAdmin {{ pillar['apache']['serveradmin'] }}'
- require:
- pkg: {{ apache.pkg }}
fix-serveradmin-ssl:
file.replace:
- name: /etc/apache2/sites-available/default-ssl.conf
- pattern: 'ServerAdmin\ (.*)$'
- repl: 'ServerAdmin {{ pillar['apache']['serveradmin'] }}'
- not_found_content: 'ServerAdmin {{ pillar['apache']['serveradmin'] }}'
- require:
- pkg: {{ apache.pkg }}
{% endif %}