Copyright BRAEWORKS (R) 2014 BRAEWORKS CONTENT MANAGEMENT SYSTEM INSTALLATION NOTES ====================================================== Prerequisites: * Apache Web Server 2.2.x installed on LINUX or MS Windows. (other PHP compatible web servers should be suitable) * PHP 5.3 with PHP SQLite installed, or PHP 5.4 with php-pecl-sqlite installed. * Content Management System can be setup as an adjunct to an existing web site, or as a new web site. If a new web site, the apache web server configuration needs to be setup for the new web site. * An SSL certificate, self signed or registered for SSL/https web site encryption. * http (port 80) for default home/links page and https (port 443) for login and user designated pages. * Content Management System is not designed to operate inside a frame or iframe. Installation: 1. If updating the web site, backup the web site. 2. Download Content Management System from "http://www.braeworks.org/download/CMS/BW-CMS-latest.zip" to a folder in your web sites directory. 3. Execute the following in your web sites directory;- unzip -u -o "BRAEWORKS_CMS-latest.zip" (-u = update, -o = overwrite) This will unzip the Content Management System file structure into the containing directory. If you wish to restore Content Management System to it's default file structure contents, execute; unzip -o "BRAEWORKS_CMS-latest.zip" NOTE: This does not change existing settings. Run Rebuild Setup, see below. 4. Pointer your browser at "http://your.web.site/site_alias/index.php" (site_alias/ is part of your server setup, usually empty). Note that the CMS will also work in an aliased folder. When the Content Management System is first accessed, will create an empty SQLite database. 5. When no users are setup, a default admin user is;- Username: admin Paswword: password Suggest you disable the admin username after you have setup another, more secure, user (with admin rights). 6. Recommended VirtualHost server configuration for Content Management System;- * SSLStrictSNIVHostCheck off (on https VirtualHost), * AccessFileName .htaccess (on both http and https VirtualHosts) 7. Suggest checking out the "Config" page first. Enter/change the default settings to more appropiate values. The "Install" page contains installation settings. When updating, goto "Install" (/index.php?action=edit_install) and save to update new values. The "Theme" page contains theme values. When updating, goto "Theme" (/index.php?action=edit_theme) and save to update new values. The hard coded installation constants are contained in the "includes/configure.php" file. It is recommended that this file is made read only. 8. After updating a site, it is highly recommended that you login as an administrator, the site version number checking will run the Rebuild Setup functionality automatically (will take upto a 1 minute to respond while the checking is completed). If you need to run the Rebuild Setup manually, goto "http://your.web.site/index.php?action=rebuild_setup" as an administrator. 9. Enjoy. IMPORTANT NOTES: 1. After version 0.25 the /plugins directory was moved to /includes/plupins. Move manually first before updating. 2. If after an update the web site is non functional, there is a recovery command available to help fix this. 3. On a LINUX host, in a console shell, goto the web site's cli/ directory and run "./rebuild.sh". 4. On a Windows host, in a command shell, goto the web site's root folder and run "cli/rebuild.cmd". From V1.02 the directory tree structure was changed to reflect standard practice. Here is the CMS directory structure at the web DOCROOT from V1.02 onwards. \ (DOCROOT) Web site base directory (maybe DOCROOT or a directory under DOCROOT). │ ├── apps Base directory for web applications (Apps). Contains fixed code. │ ├── example_app1 App1 example directory. │ ├── example_app2 App1 example directory. │ ├── include Apps include directory. │ │ ├── classes Apps classes directory (autoload classes looks in here). │ │ └── ini Apps fixed INI and JSON hard coded control files directory. │ ├── javascript Recomended Apps javascript directory. │ ├── plugins Apps plugin directory (autoload classes looks in here). │ ├── stylesheets Recomended Apps stylesheet directory. │ └── (other) Other Apps directories as required. │ ├── cms Base CMS directory (this directory is overwritten by CMS updates). │ ├── cli CMS command line operations (e.g. rebuild, backup, etc.). │ ├── images CMS images directory (used by the CMS). │ │ └── manual Images for the CMS manual.. │ ├── includes CMS includes (not include like apps) directory. │ │ ├── classes CMS classes directory (autoload classes looks in here). │ │ ├── ini CMS fixed INI and JSON hard coded control files directory. │ │ ├── ops CMS operations directory (e.g. login, login, edit config, etc.). │ │ └── plugins CMS plugin directory (autoload classes looks in here). │ └── wysiwyg CMS installed WYSIWYG html editors. │ ├── etc Config base directory for CMS and Apps (this directory contains the configuration files, backup required). │ ├── ext Directory for external code (e.g. Google Analytics, etc. code). │ ├── images Custom images based directory for web site. │ │ ├── backgrounds Custom/uploaded background images directory. │ │ ├── icons Custom icom=ns directory. │ │ └── upload Custom/uploaded web page images directory. │ ├── ini Edited configuration/options INI and JSON file directory for CMS and Apps. │ ├── sqlite The CMS sqlite configuration database directory. │ └── (other) Other Apps config directories as required. │ ├── localtools Local tools directory. │ ├── page_bodies Web site body code directory. │ └── var Temporary / transitory data directory for CMS and Apps (should not need backup). ├── backups Backups directory for CMS and Apps. ├── cache Cache directory for CMS and Apps. ├── exports Exports directory for CMS and Apps. ├── logs Logs files for CMS and Apps. ├── sessions PHP user session data directory (if used). ├── Trash General directory for CMS and Apps. ├── variables CMS and Apps variable storage directory (not unique to a user). └── (other) Other Apps variable directories as required. Enjoy.