Applications Management System Library for PHP (AppsCMS) - INSTALLATION NOTES
Copyright (C) 2013 to 2020 Robert Fulton
SVN Build: $Id: Installation.md 1112 2020-02-04 12:35:46Z robert0609 $
- Apache Web Server 2.2.x or 2.4.x installed on LINUX.
- PHP 5.3 or PHP 7.2 (recommended) with PHP SQLite installed,
or PHP 5.4 with php-pecl-sqlite installed.
- Applications Management System Library for PHP 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.
- Applications Management System Library for PHP is not designed to operate inside a frame or iframe.
If updating the web site, backup the web site.
Download Applications Management System Library for PHP from
to a folder in your web sites directory (typically public_html/).
Execute the following in your web sites directory;-
chmod u+x "AppsCMS-Installer-latest.sh" # to allow the installer to run
./AppsCMS-Installer-latest.sh # to run the installer
This will unpack the zip archive to "cms/dist/" and
unzip the Applications Management System Library for PHP file structure into the containing directory.
Run "sudo bash -e cms/cli/cms_set_permissions.sh". This will set permissions for shell and web server access.
Run "bash -e cms/cli/cms_rebuild.sh". This will build the latest settings, configuration DB and directory structure for this AppsCMS version.
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 AppsCMS will also work in an aliased folder.
When the Applications Management System Library for PHP is first accessed, will create an empty SQLite database.
When no users are setup, a default admin user is;-
Recommend that the admin username be disabled after you have setup another, more secure, user (with admin rights).
Recommended VirtualHost server configuration for Applications Management System Library for PHP;-
- SSLStrictSNIVHostCheck off (on https VirtualHost),
- AccessFileName .htaccess (on both http and https VirtualHosts)
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/cms_configure.php" file. It is recommended
that this file is made read only.
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 or 2 to respond while the checking and rebuilding is completed).
If you need to run the Rebuild Setup manually, run the bash script "cms/cli/cms_rebuild.sh" or goto "http://your.web.site/index.php?action=rebuild_setup" as an administrator.
CAUTION: The update will use default settings for new features. Take note of the messages (e.g.ERROR, WARNING, and INFO).
The default settings for new features may need to changed to more appropriate values.
- If after an update the web site is non functional, there is a recovery command available to help fix this.
- On a LINUX host, in a console shell, goto the web site's cli/ directory and run "./rebuild.sh".
- On a Windows host, in a command shell, goto the web site's root folder and run "cli/cms_rebuild.cmd".
- If upgrading from V2.07 or less, run "cms/cli/update_appsV207.sh" to upgrade your applications.
- If upgrading from Links Manger to AppsCMS, run "cms/cli/cms_import_links_manager.sh" to import Link Manager.
Here is the AppsCMS base directory structure.
\ (DOCROOT/alias) Web site base directory (maybe DOCROOT or a directory / alias under DOCROOT).
├── apps Base directory for web applications (apps code supplied by user).
├── cms Base AppsCMS directory (this directory is overwritten by AppsCMS updates).
├── etc Config base directory (this directory contains the configuration files).
├── localtools Local tools directory (supplied by user).
├── page_bodies Web body/apps code directory (supplied by user).
└── var Temporary / transitory data directory (should not need backup).