Project home: https://bues.ch Original repository at: https://git.bues.ch/git/cms.git https://bues.ch

Michael Buesch 82dc1f1615 Remove deprecated datetime.utcnow 1 jaar geleden
cms 82dc1f1615 Remove deprecated datetime.utcnow 1 jaar geleden
example b5400d2591 Update css 1 jaar geleden
submodules da4d696699 Update submodule 'multipart' 1 jaar geleden
.gitignore 94df127121 .gitignore: Add __pycache__ 5 jaren geleden
.gitmodules 9b65e4fc50 Remove usage of cgi module 2 jaren geleden
README.rst dbc7b5236a Print message, if cython module fails to load 3 jaren geleden
TODO a4e0639a7f Remove header todo entry 5 jaren geleden
build.sh 9a032e1ae2 build: Fix cython link for Python 3.10 2 jaren geleden
cleantree.sh 9a032e1ae2 build: Fix cython link for Python 3.10 2 jaren geleden
cms-cli 0bdfc96499 Change mime types to xhtml 1 jaar geleden
index.wsgi dbc7b5236a Print message, if cython module fails to load 3 jaren geleden
setup.py eb4acdd438 Use setuptools 2 jaren geleden
setup_cython.py 7ea91af783 Remove Cython3 support 4 jaren geleden

README.rst

cms.py - simple WSGI/Python based CMS script
============================================

Copyright (c) 2011-2021 Michael Buesch


Installing
==========

Just clone the cms.git repository to some directory where apache has access to.
In the configuration example below the directory will be ``/var/cms``

Then create the database directory named ``db`` inside of the cloned directory.
You may start with the example db:

``cp -r /var/cms/example/db /var/cms/``


Configuring Apache httpd
========================

Install the Apache WSGI module. On Debian Linux, this is libapache2-mod-wsgi-py3.
Create a new config file /etc/apache2/conf.d/wsgi with content similar to
the following Debian based example:

.. code::

# Adjust "user" and "group" to your system.
WSGIDaemonProcess wsgi processes=10 threads=1 display-name=apache-wsgi user=www-data group=www-data python-path=/var/cms
WSGIApplicationGroup %{GLOBAL}
WSGIPythonOptimize 1
# /cms is the base URL path to the CMS.
# /var/cms is where index.wsgi and the db directory live.
# /var/www is the path to the static files.
# Adjust these paths to your setup.
WSGIScriptAlias /cms /var/cms/index.wsgi
SetEnv cms.domain example.com
SetEnv cms.cmsBase /var/cms
SetEnv cms.wwwBase /var/www
SetEnv cms.maxPostContentLength 1048576
SetEnv cms.debug 1

WSGIProcessGroup wsgi
AllowOverride None
Options -ExecCGI -MultiViews +SymLinksIfOwnerMatch -Indexes
Require all granted

# Redirect all 404 to the CMS 404 handler (optional)
ErrorDocument 404 /cms/__nopage/__nogroup.html