OpenPSA is a management suite for web agencies and consultants that provides a unified interface for handling many common business processes. It is built on a component architecture that makes it easy to integrate new components for specific requirements and is available as free software under the terms of the LGPL license.
OpenPSA 1.x was initially released as Open Source under the GNU GPL license by Nemein on May 8th 2004 to support the 5th anniversary of the Midgard Project. The package was originally known as Nemein.Net.
The currently active branch (OpenPSA 9) is developed and supported by CONTENT CONTROL.
Read more in http://openpsa2.org/
Dependencies
- PHP 5.2 or newer
- Apache (or Lighttpd with the midgard2 backend)
- Midgard2
- Midgard2 Content Repository (
libmidgard2-2010
) - PHP bindings to Midgard2 (
php5-midgard2
) - GNOME database abstraction layer (
libgda-4.0
) and some database back-end
- Midgard2 Content Repository (
- alternatively, the legacy Midgard1 8.09 branch is also still supported
On the client side, all modern web browser should work
Setting up a Midgard server
You need a Midgard database set up for OpenPSA usage. This can be generated by running:
$ php quick_init.php openpsa
You need php-cgi
(typically at /etc/php5/cgi/conf.d/midgard2.ini
) with some settings that open a Midgard2 database connection:
extension=midgard2.so
[midgard2]
midgard.engine = On
midgard.http = On
midgard.configuration_file="/etc/midgard2/conf.d/openpsa"
midgard.superglobals_compat = On
Next you should install OpenPSA under your document root:
$ cp -R openpsa /var/www/
Then, use Composer to install PHP dependencies
$ cd /var/www/openpsa
$ wget http://getcomposer.org/installer && php installer
$ php composer.phar install
Setting up Lighttpd
Enable rewrite
and fastcgi
modules in your Lighttpd config (by default /etc/lighttpd/lighttpd.conf
):
server.modules += (
"mod_fastcgi",
"mod_rewrite"
)
Also enable FastCGI to talk to your PHP installation:
fastcgi.server = (
".php" => (
(
"bin-path" => "/usr/bin/php-cgi",
"socket" => "/tmp/php.socket"
)
)
)
Then just configure your Lighttpd to pass all requests to the OpenPSA "rootfile":
url.rewrite-once = (
"^/openpsa2-static/OpenPsa2/(.*)$" => "/openpsa/themes/OpenPsa2/static/$1",
"^/openpsa2-static/(.*)$" => "/openpsa/static/$1",
"^([^\?]*)(\?(.+))?$" => "openpsa/rootfile.php$2"
)
Note: this rewrite rule is a bit too inclusive, to be improved.
Restart your Lighttpd and point your browser to the address you're using with the server. Default login to OpenPSA is admin
/password
.
Setting up Apache
Alternatively, you can also run under Apache (or any other web server, for that matter). Just make sure that you have mod_rewrite enabled:
a2enmod rewrite
And use something like this in your vhost config (or .htaccess file):
RewriteEngine On
RewriteRule ^/midcom-static/OpenPsa2/(.*)$ /openpsa/themes/OpenPsa2/static/$1 [L]
RewriteRule ^/midcom-static/(.*)$ /openpsa/static/$1 [L]
RewriteRule ^/(.*)$ /openpsa/rootfile.php [QSA,L]