Boonyah.apache2-vhosts

apache2-vhosts

Diese Rolle erstellt eine Anzahl von Apache2 vhosts sowie individuelle Benutzerkonten. Sie wird in einer Umgebung verwendet, in der mehrere Webseiten gehostet werden und von mehreren Entwicklern zugänglich sein müssen. SSH ist so konfiguriert, dass nur Anmeldungen mit öffentlichen Schlüsseln erlaubt sind.

Rollenvariablen

Es gibt eine Reihe von Variablen, die übergeben werden können. Einige werden pro Host benötigt, während andere rollenbasiert sind.

Apache-Variablen

apache_packages:
  - apache2
  - apache2-doc
  - apache2-utils
  - apache2-mpm-itk
  - libapache2-mod-php5

apache_modules:
  - alias.conf
  - alias.load
  - auth_basic.load
  - authn_file.load
  - ...

apache_host: "127.0.0.1"
apache_port: "80"
apache_ssl_port: "443"

apache_packages

Eine Liste aller benötigten apt Apache2-Pakete. Standardmäßig wird der Apache2-mpm-itk-Worker installiert, damit jeder vhost als der Benutzer ausgeführt werden kann, der ihn verwendet.

apache_modules

Eine Liste aller aktivierten Apache2-Module und der Konfigurationsdateien. Alles, was hier aufgeführt ist, wird von /etc/apache2/mods-available nach /etc/apache2/mods-enabled verlinkt.

apache_host

Die IP-Adresse, an die sich Apache2 binden soll. Wird für die Listen-Zeile in der Apache-Konfigurationsdatei und die VirtualHost-Zeilen in den vhost-Konfigurationsdateien verwendet.

apache_port

Der Port, auf dem Apache2 hören soll. Wird für die Listen-Zeile in der Apache-Konfigurationsdatei und die VirtualHost-Zeilen in den vhost-Konfigurationsdateien verwendet.

apache_ssl_port

Der SSL-Port, auf dem Apache2 hören soll. Wird für die Listen-Zeile in der Apache-Konfigurationsdatei und die VirtualHost-Zeilen in den vhost-Konfigurationsdateien verwendet.

PHP-Variablen

php_packages:
  - php5-common
  - php5-cli
  - php5-suhosin
  - php5-apc
  - php-pear
  - php5-gd
  - php5-memcache
  - php5-mcrypt
  - php5-gmp
  - php5-mysql
  - php5-curl

post_max_size: "10M"
upload_max_filesize: "10M"
php_timezone: "Australia/Brisbane"
memory_limit: "32M"
html_errors: "Off"

php_packages

Eine Liste aller benötigten apt PHP-Pakete.

post_max_size, upload_max_filesize, php_timezone, memory_limit, html_errors

Einstellungen, die in der php.ini-Datei verwendet werden. Diese werden wahrscheinlich pro Host festgelegt.

Vhost-Einstellungen

deleted_vhost_sites:
  - {
      host: 'del.example.com',
      user: 'delexample',
      group: 'delexample',
      admin_email: '[email protected]',
      disabled: True
    }

disabled_vhost_sites: &disabled
  - {
      host: 'dev.example.com',
      user: 'devexample',
      group: 'devexample',
      admin_email: '[email protected]',
      disabled: True
    }

vhost_sites:
  - *disabled
  - {
      host: 'example.com',
      user: 'example',
      group: 'example',
      admin_email: '[email protected]',
      ssl: {
        enabled: False,
        ssl_certificate: '/path/to/ssl/cert',
        ssl_certificate_key: '/path/to/ssl/private_key'
      },
      aliases: [
        www.example.com
        au.example.com
      ]
    }

deleted_vhost_sites

Alle hier aufgeführten Seiten werden sicher nicht auf dem Server vorhanden sein. Benutzerkonten und public_html-Ordner werden gelöscht und die Site-Konfigurationsdateien werden deaktiviert und entfernt.

disabled_vhost_sites

Seiten, die hier aufgeführt sind, haben weiterhin ihre Benutzerkonten und public_html-Ordner, können sich jedoch nicht anmelden, und die vhost-Konfigurationsdatei wird nicht in Apache aktiviert.

vhost_sites

Dies ist eine Zusammenführung von deaktivierten und allen zusätzlichen Seiten, die aktiviert werden sollen. Es wird sichergestellt, dass das Benutzerkonto vorhanden ist und dass sie sich über SSH anmelden können. public_html-Ordner werden erstellt und die Konfiguration wird zu sites-enabled verlinkt, damit Apache deren Inhalte bereitstellen kann.

SSH-Einstellungen

Im Rahmen der Erstellung der vhosts werden alle Dateien im Verzeichnis files/ssh/keys zusammengeführt und jedem aktivierten Benutzerkonto hinzugefügt. Dies ermöglicht es mehreren Benutzern, sich in jedes Konto als Hosting-Benutzer einzuloggen.

Installieren
ansible-galaxy install Boonyah.apache2-vhosts
GitHub Repository
Lizenz
Unknown
Downloads
77
Besitzer