Joseph Hall 989ae09576 Merge pull request #20 from adamherzog/redhat-vhost-config-extension
Add vhost config file extension for RedHat-based distributions
2014-02-09 07:47:14 -07:00
2013-07-27 20:31:20 +02:00

======
apache
======

Formulas to set up and configure the Apache HTTP server.

.. note::

    See the full `Salt Formulas installation and usage instructions
    <http://docs.saltstack.com/topics/conventions/formulas.html>`_.

Available states
================

.. contents::
    :local:

``apache``
----------

Installs the Apache package and starts the service.

``apache.mod_proxy``
-------------------

Enables the Apache module mod_proxy.

``apache.mod_proxy_http``
-------------------

Enables the Apache module mod_proxy_http and requires the Apache module mod_proxy to be enabled.

``apache.mod_wsgi``
-------------------

Installs the mod_wsgi package and enables the Apache module.

``apache.vhosts.standard``
-------------------------

Configures Apache name-based virtual hosts using data from Pillar.

Example Pillar:

.. code:: yaml

    apache:
      sites:
        # Default values below are used unless disabled by setting to 'None'.
        example.com: # must be unique; used as an ID declaration in Salt; also passed to the template context as {{ id }}
          template_file: salt://apache/vhosts/standard.tmpl
          template_engine: jinja

          interface: '*'
          port: '80'

          ServerName: {{ id }} # uses the unique ID above unless specified
          ServerAlias: www.{{ id }}

          ServerAdmin: webmaster@{{ id }}

          LogLevel: warn
          ErrorLog: {{ logdir }}/{{ id }}-error.log # E.g.: /var/log/apache2/example.com-error.log
          CustomLog: {{ logdir }}/{{ id }}-access.log # E.g.: /var/log/apache2/example.com-access.log

          DocumentRoot: {{ wwwdir }}/{{ id }} # E.g., /var/www/example.com

          Directory:
            {{ wwwdir }}/{{ id }}: # E.g.: /var/www/example.com:
              Options: -Indexes FollowSymLinks
              Order: allow,deny
              Allow: from all
              AllowOverride: All
              Formula_Append: |
                Additional config as a
                multi-line string here

          Formula_Append: |
            Additional config as a
            multi-line string here

        example.net:
          template_file: salt://apache/vhosts/minimal.tmpl


``apache.debian_full``
----------------------

Installs and configures Apache on Debian and Ubuntu systems.

These states are ordered using the ``order`` declaration. Different stages
are divided into the following number ranges:

1)  apache will use 1-500 for ordering
2)  apache will reserve 1  -100 as unused
3)  apache will reserve 101-150 for pre pkg install
4)  apache will reserve 151-200 for pkg install
5)  apache will reserve 201-250 for pkg configure
6)  apache will reserve 251-300 for downloads, git stuff, load data
7)  apache will reserve 301-400 for unknown purposes
8)  apache will reserve 401-450 for service restart-reloads
9)  apache WILL reserve 451-460 for service.running
10) apache will reserve 461-500 for cmd requiring operational services

Dependencies:

* `apt <https://github.com/saltstack-formulas/apt-formula>`_

Optional dependencies:

* `php <https://github.com/saltstack-formulas/php-formula>`_

Example Pillar:

.. code:: yaml

    apache:
      register-site:
        # any name as an array index, and you can duplicate this section
        {{UNQIUE}}:
          name: 'my name'
          path: 'salt://path/to/sites-available/conf/file'
          state: 'enabled'
Description
Set up and configure the Apache HTTP server
https://github.com/saltstack-formulas/apache-formula
Readme 1.8 MiB
Languages
Jinja 62.1%
SaltStack 27.7%
Ruby 6.4%
Shell 2.1%
JavaScript 1.7%