While COmanage Directory is designed to work in a LAMP environment, the only required component is PHP. Other modern operating systems and web servers should work. Configuration of these prerequisites is generally beyond the scope of this documentation.
PHP 5.2.8 or later is required, with LDAP support enabled (built with
Web Server Setup
- The web server should be configured to deliver content over HTTPS (via TLS/SSL).
- Make sure the server is capable of rendering PHP. On Linux systems most often the installation of PHP enables the php5_module but you should confirm it has been enabled. The configuration of Apache to use the module and parse .php files as PHP is also often done when PHP is installed but you should confirm that your Apache configuration contains lines similar to these: Apache httpd documentation. You may wish to restrict the configuration for parsing of .php files to the COmanage Directory directory by embedding the <FilesMatch> element inside of an appropriate <Directory> element. See the
- Configure the directory holding COmanage Directory to allow symlinks, overrides, and accept
index.php. For Apache, something like the following should work:
- Make sure that the mod_rewrite Apache module is installed and enabled.
Checkout the COmanage Directory source files somewhere into the file system. The location you put the files does not have to be the location from where the files are served by the web server. Create a symlink from the tag to
Deploy the COmanage Directory directory wherever you like. Note that the user that the web server runs as needs to be able to read all the files.
Configure your web server to deliver the directory at a suitable URL such as
https://some-vo.org/directory. A simple strategy to accomplish this when running under the Apache web server is to create a symlink in the
directory that points to the directory
You should verify that the web server will not deliver unprocessed files, especially configuration files such as the LDAP configuration file (ie:
https://some-vo.org/directory/app/Config/ldap.php). By default, these files will not be delivered.
You'll most likely want to move the
directory-source/app/tmp directory, since it is bad practice to have writable directories on the file system delivering web content. A reasonable alternative would be
/var/cache/directory. The easiest way to do this on a Unix-like system is to create a symlink to the new directory.
In order to integrate COmanage Directory with your authentication system, configure your Web server to protect the directory
directory/app/webroot/auth/login. For example, under Apache your configuration may look something like
LDAP Server Setup
directory/app/Config/ldap.php to have settings suitable for your LDAP server. Contact your LDAP administrator for the appropriate settings.
Database Server Setup
COmanage Directory does not use a database server.
To test open a web browser and browse to
https://yourserver.org/directory (or wherever you mounted the directory for your web server}. You should be able to search for entries from your LDAP server.
- The directory
mod_rewritedirectives. Not all Apache configurations by default allow configuration options within
.htaccessfiles. Be sure that your Apache configuration has the necessary
AllowOverideconfiguration to allow that
.htaccessfile to be processed (this is not the default on Debian Squeeze and other Linux distributions).