Content Management System
Omeka, although as weird as it sounds for a word that is hardly found in any legit dictionary, is an open source and free CMS that is quite simple to understand and capable of integrating into your development projects – as a CMS, to leave you to concentrate on more important aspects of your other software development. And although it is not as robust as Microsoft Sharepoint document management system in terms of its ease of integration as mentioned above, i personally find it interesting and quite relevant in the context of a project that i was recently involved in that i would recommend to you to take a look.
I begin and end by showing you around how Omeka would be installed under a GNU/Linux Kernel environment (i quite have to pretentiously or not put ‘Linux’ as we mostly know, as ‘GNU/Linux Kernel’ so as to respect all my acquaintance who place the distinction between Linux as a GNU/Linux kernel, and the ‘Linux’ we call any general Linux products. And of course i must agree it should be called GNU/Linux Kernel.)
Our target distribution appears to be CentOS which i have come to know and love, CentOS is a fork of RHEL as most would agree with, it is capable as a stable enterprise computing GNU/Linux kernel based server, and something that i would highly recommend for Omeka CMS to be installed and run on.
Because Omeka CMS runs on a HTTP server such as Apache HTTPD, we will step through installing Apache HTTPD in your operating system.
Prerequisite / Imposed Working Environment
1. You have installed in your server CentOS 5.5 or similar CentOS operating system version number, such as 4, 5.1, 5.2, 5.3 or its RHEL equivalent.
2. You have access to the Internet as we need to download certain packages and installation files related to the setup.
3. You have root access or may execute sudoer commands in the server.
4. You have installed in your server MySql DBMS server.
5. You have the necessary PHP installation in your server.
Required Installations (Which we will walk through in this guide)
1. Apache HTTPD
Installing Apache HTTPD Web Server
1. By using the yellowdog updater modified package manager of CentOS, installing Apache HTTPD is as simple as issuing a ‘yum install httpd’ command.
$yum install httpd
Upon issuing the ‘yum install’ command, the package manager searches for the package to be installed, outputs some verbose information and asks for decision to continue to download the installation files and any dependencies that need to be updated and installed along with the HTTPD.
Verbose information being output, the yellowdog (yummy) updater modified package manager searches for dependencies and suggests to you what it intends to do with you to choose between yes or no. Choose ‘Y’ for yes to proceed.
Yum install completed.
2. (Optional) Configure Apache HTTPD to start automatically following a start up or restart.
You may configure Apache HTTPD to start automatically after a server restart or a cold start up. It is generally a good idea if you have many servers under your charge, it is not just for the particular reason of easing your workload or responsibilities. Circumstances following a warn restart usually are perplexing and there may be many other things you want to skip through to get to the main agenda, investigation or patching for example.
$chkconfig –level 2345 httpd on
The chkconfig command allows you to specify the state of the runtime (1 to 6) of any particular software. The above command will ensure Apache HTTPD is started automatically.
You may double configure this by checking through chkconfig –list httpd.
$chkconfig –list httpd
Apache HTTPD in set to ‘on’.
3. Start Apache HTTPD web server.
$service httpd start
(There are some irrelevant output from the server as seen in the screenshot, this is due to some configurations i did not set on my server, i am using a virtual machine for this example, you shouldn’t be having this)
At this point we have installed in our server Apache HTTPD which the only additional setup we need to perform before installing Omeka.
And at this point, Omeka is not installable via $yum install omeka, which requires us to manually download, unzip and manage the packaging, directory ourselves.
Omeka is available for download from here although it may quite possibly change from time to time. And in this case nevertheless, Google is your best mate.
1. Download omeka from your server.
Doing a quick listing ($ls -l) shows the installation file that is downloaded to the server.
2. Unzip the installation package into /var/www/html/
The unzip command unzips the zip package to the current directory by default, you may have noticed that i have sent in a few parameters and pipes. Let me explain these options.
The unzip command by default verbosely outputs all the directory and files that it is unzipping to, to the screen, and what you get are things you not necessarily need to ‘scan’ through. the pipe -q quietly unzips.
Because the default behavior of the unzip command unpacks all files into the same directory of the zip file and our intention is to place it into the /var/www/html where Apache HTTPD is configured by default to serve from, we pipe in -d /var/www/html.
3. Go to your unzip directory
We will go to our unzip directory, /var/www/html using the “cd” command and “ls -l” to list.
We will also change the verbose name of the default installation directory name from “omeka-1.2.1″ to simply “omeka” using the “mv” move command.
4. Change ownership of the Omeka installation from “root” to “apache”
For Apache HTTPD to effectively manage Omeka, change the ownership of the entire Omeka installation to “apache” from whatever it was.
Notice that i have in my screenshot showed the effects of the chown command on the targeted directory before and after.
The flag -R specifies that the command will traverse every folder under the folder specified and apply the same owner and group (apache:apache), essentially, everything.
5. Configure the DBMS connection settings through db.ini
The db.ini find can be found in the first level directory of omeka which currently resides on /var/www/html/omeka/. Using your favorite text editor, edit the text file.
I would be using the text editor vim for this guide.
By default, db.ini shows default values in which we must change out.
host: This can be localhost, the ip equivalent of localhost (as specified by your /etc/hosts or by default 127.0.0.1), the domain name or ip of where the DBMS resides on.
username: Self explanatory.
name: The name of the database, this is the name you supplied when you created your database for use with omeka (create database abc; for example).
prefix: The use of prefix is commonly found in shared hosting facilities where one has limitations over the number of mysql database server or instances for the package paid for. It is perfectly fine for you to leave this empty otherwise, as it would not serve any use other than the above mentioned multiple databases enabling “loophole”.
6. Finish off installation through web browser.
Once we are past this stage, we may finish off the rest of the installation and customization of Omeka through the web browser.
Special thanks to Eugene for the comprehensive explanation and practices on chkconfig!