Banshee is a PHP website framework with a main focus on security. It has a Model-View-Controller architecture and uses XSLT for the view. MySQL is being used as the default database, but with little effort other databases can be used as well. Although it's called a framework, it comes with a ready to use CMS, lots of libraries and modules like a…
PHP JavaScript XSLT CSS Shell
Latest commit d6bfaff Oct 18, 2017 @hsleisink hsleisink Merge pull request #7 from karillith/patch-1
Added assets/ directory
Permalink
Failed to load latest commit information.
assets Update banshee_logo.md Oct 15, 2017
controllers Release 6.1 Sep 24, 2017
database Release 6.1 Sep 24, 2017
extra Release 6.1 Sep 24, 2017
libraries Release 6.1 Sep 24, 2017
logfiles Release 6.0 Mar 1, 2017
models Release 6.1 Sep 24, 2017
public Release 6.1 Sep 24, 2017
settings Release 6.1 Sep 24, 2017
templates Release 6.1 Sep 24, 2017
views Release 6.1 Sep 24, 2017
.htaccess Release 5.2 May 1, 2016
ChangeLog Release 6.1 Sep 24, 2017
LICENSE Release 6.1 Sep 24, 2017
README.md Release 6.1 Sep 24, 2017
banshee-logo.png Added Banshee Logo Oct 5, 2017
composer.json Release 6.0 Mar 1, 2017
import Release 6.1 Sep 24, 2017
new_layout Release 6.1 Sep 24, 2017
new_module Release 6.1 Sep 24, 2017
remove_module Release 6.1 Sep 24, 2017
security_audit Release 6.1 Sep 24, 2017
show_library_api Release 6.1 Sep 24, 2017

README.md

Banshee

This application has been built upon the Banshee PHP framework. Banshee is a PHP website framework with a main focus on security. It has a Model-View-Controller architecture and uses XSLT for the view. MySQL is being used as the default database, but with little effort other databases can be used as well. Although it's called a framework, it comes with a ready to use CMS, lots of libraries and modules like a forum, weblog and a guestbook.

Configure your webserver

Use the directory 'public' as the webroot directory and allow PHP execution. If you use the Hiawatha webserver, you can use the following configuration:

UrlToolkit {
	ToolkitID = banshee
	RequestURI isfile Return
	Match ^/(css|files|fonts|images|js)(/|$) Return
	Match ^/(favicon.ico|robots.txt)$ Return
	Match [^?]*(\?.*)? Rewrite /index.php$1
}

Directory {
	DirectoryID = files
	Path = /files
	StartFile = index.html
	ShowIndex = yes
	ExecuteCGI = no
}

Directory {
	DirectoryID = static
	Path = /css, /fonts, /images, /js
	ExpirePeriod = 2 weeks
}

VirtualHost {
	...
	UseToolkit = banshee
	UseDirectory = static, files
}

For Apache, there is a .htaccess file in the 'public' directory which contains the required URL rewriting rules.

Configure PHP

Banshee needs PHP's MySQL, XML/XSLT and GD module.

Configure your database

Open the website in your browser and follow the instructions on your screen. In case of an error, add /setup to the URL.

Configure Cronjob

Configure cronjob to run the script database/backup_database once per day.

Configure Banshee

Go to the Settings page in the CMS and replace the present e-mail addresses with your own. Before going live, set the DEBUG_MODE flag in settings/website.conf to 'no'.