Skip to main content

Simple CLI tool to create and delete easily virtual hosts in Apache.

Project description

a2svm is a Simple CLI tool to create and delete easily virtualhosts in Apache.

usage: a2svm [-h] [-v] {mk,ls,rm,en,ds} …

a2svm commands are:

  • mk Create a virtualhosts
  • ls Show managed virtualhosts on Apache server
  • rm Delete a virtualhosts
  • en Enable a virtualhosts
  • ds Disable a virtualhosts

See ‘a2svm <command> -h’ for more information on a specific command.

PyPI package



a2svm need apache mod_macro which could be installed on debian 6 by the following command

$ aptitude install libapache2-mod-macro

Once mod_macro is avalaible some template could be created for use by a2svm like this one

<Macro vhost_standard $name $servername $directory>
  <VirtualHost *:80>

    ServerName $servername

    DocumentRoot /var/www/$directory/public

    <Directory /var/www/$directory>
        Options  FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all

    ErrorLog ${APACHE_LOG_DIR}/error-$name.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access-$name.log combined

#Comments beginning by "a2svm_make_command" are used to run external commands
#when vhost is created
#a2svm_make_command: /bin/mkdir -p /var/www/$directory/public /var/www/$directory/log
#a2svm_make_command: /bin/chown -R cyp:www-data /var/www/$directory
#Comments beginning by "a2svm_remove_command" are used to run external commands
#when vhost is removed
#a2svm_remove_command: /bin/tar czf /var/www/archive/$servername.tgz /var/www/$directory
#a2svm_remove_command: /bin/rm -rf /var/www/$directory


Install it easily:

Using pip

$ pip install a2svm

Warning! On some old distribution using Python 2.x, you could require to upgrade pip to support install, run:

$ pip install --index-url= --upgrade pip setuptools

Using easy_install

On most Linux distribution

$ easy_install a2svm

But on some, prerequisites are required, for example, on Debian 6

$ aptitude install python-pip


Using pip

$ pip --upgrade a2svm

Using easy_install

$ easy_install --upgrade a2svm

From sources

$ git clone
$ cd a2svm
    $ pip install -r requirements.txt
$ python install


To publish package on pypi

$ pip install twine
            $ rm -rf dist
            $ python sdist bdist_wheel
$ twine upload dist/*

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for a2svm, version 0.1.2
Filename, size File type Python version Upload date Hashes
Filename, size a2svm-0.1.2-py3-none-any.whl (10.0 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size a2svm-0.1.2.tar.gz (9.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page