common/tasks/apache.yml

65 lines
1.8 KiB
YAML

---
- name: Install Apache
apt:
name: apache2
- name: Create directories for Apache configuration
file:
state: directory
path: '{{ item }}'
mode: 'u=rwx,g=rx,o=rx'
owner: root
group: root
with_items:
- '{{ common__apache__conf_dir }}'
- '{{ common__apache__available_dir }}'
- '{{ common__apache__enabled_dir }}'
- name: Configure Apache ports
template:
src: templates/apache/ports.conf
dest: /etc/apache2/ports.conf
mode: 'u=rw,g=r,o=r'
owner: root
group: root
notify: common | Restart Apache
- name: Disable directory listing
lineinfile:
path: /etc/apache2/apache2.conf
regexp: '^Options Indexes FollowSymLinks$'
line: 'Options FollowSymLinks'
notify: common | Restart Apache
- name: Remove Apache default site
file:
state: absent
path: '{{ common__apache__enabled_dir }}/000-default.conf'
when: common__apache__remove_default|bool
notify: common | Restart Apache
- name: Enable Apache modules
command: '/usr/sbin/a2enmod "{{ item }}"'
register: common__apache__enable_apache_modules_result
changed_when: >
common__apache__enable_apache_modules_result.stdout is search('Enabling module')
with_items: '{{ common__apache__modules }}'
notify: common | Restart Apache
- name: Add Apache sites
template:
src: 'templates/apache/{{ item.type }}.conf'
dest: '{{ common__apache__available_dir }}/{{ item.domain }}.conf'
mode: 'u=rw,g=r,o=r'
owner: root
group: root
with_items: '{{ common__apache__sites }}'
notify: common | Restart Apache
- name: Enable Apache sites
command: '/usr/sbin/a2ensite "{{ item.domain }}.conf"'
register: common__apache__enable_apache_sites_result
changed_when: >
common__apache__enable_apache_sites_result.stdout is search('Enabling site')
with_items: '{{ common__apache__sites }}'
notify: common | Restart Apache