Skip to main content

Manage multiple lighttpd and Django or Flask websites on a single machine.

Project description

# simple-site-manager

This creates configuration files for lighttpd and django fcgi, based on a simple list of sites.
Templates are used for the output files so they can easily be modified and customised for your own sites.

You can either use a global config file or individual files for each project.

The project is in the early stages, barely tested. More to come. Born from the frustration I felt every time I wanted to delpoy a new python driven site...

# Install

Install from pypi:
```sh
pip install simple-site-manager
```

# Configure

## Example site list
```yaml
site1:
domain_name: example.com
# optional arguments
redirect_from_domains: ['www.example.com']
project_root_dir: /opt/django/site1/,
django_root_dir: /opt/django/site1/site1/,
fcgi_path: /opt/django/site1/site1/siteman-fcgi.py,
uploaded_dir: /opt/static/site1_uploaded/,
static_dir: /opt/static/site1/,
www_uploaded_path: /uploaded/,
www_static_path: /m/,
redirect_to_https: false,
virtual_env_dir: /opt/django/site1/env-site1/,
settings_module: site1.settings
max_procs: 3
```

### Defaults
The paths in the example above are the defaults if nothing is specified in the config file.
In a future versions you will be able to set your defaults yourself.

Here are some defaults:
```
root of your project: /opt/django/sitename/
fcgi file path (where manage.py is located): /opt/django/sitename/sitename/
static files: /opt/static/sitename/
static uploaded files: /opt/static/sitename_uploaded/
settings file: /opt/django/sitename/sitename/sitename/settings.py
settings module: sitename.settings
virtualenv path: /opt/django/sitename/env-sitename/
```

# Usage
```sh
siteman config_file.yaml
```
You will need to run it as root to write lighttpd configuration, feel free to use `--print` to preview the output files.

For additional usage options, just run `siteman -h`

# TODO

- More fine tuning of site performance settings.
- Store site fcgi config in /etc/siteman instead of each project's directory
- Store lighttpd conf files in /etc/siteman as well?

Project details


Download files

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

Source Distribution

simple-site-manager-0.1.7.tar.gz (5.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page