You are here

Directory structure best practices

Submitted by carolhop on Mon, 07/12/2010 - 19:02

Hi, fellow Luminis developers.

We are migrating to Luminis We are starting "fresh" ....

1) I would like to know best practices for adding "homegrown" content on the server (example: html you wrote, jpg used in a Targed Content Channel, jsp, xml, etc). Currently (4.1.x - Production), we host much of our homegrown content in a subdirectories under a directory similar to the following:
I believe the reason we chose to do this is so it was easy to navigate to via the browser. would be an example.
In the new environment, we would like to protect some of the content under /usr/luminis/webapps/luminis/setonContent/ so it cannot be bookmarked. The jsps we already have protected in the JSP logic itself. But some of our xml feeds can be bookmarked if the user is savvy enough to figure out the URL.

In the past I have written a filter so that all files in this directory and all subdirectories were protected (in our dev env). However, I overdid it, and I blocked even luminis from displaying the content -- which wasn't pretty when I logged in to our test environment. :)

So, finally, the question! Where do you put your own image files (for example, images or pdf files you might use in a targeted content channel of HTML type?) and how do you refer to them in JAVA, JSPs and HTML?

Is this what the /usr/luminis/webapps/luminis/cps directory is all about?

2) Categories for channels - any best practices here? Our current channel category structure has become a bit mish-moshy over the past couple of years.
We have found subcategories painful to navigate as an admin. Also, the Manage Targeted Content Channels view does not show the categories. We are mostly concerned with Categories from a luminis admin point of view (how to find a channel you are asked to modify, etc), as most users do not add there own content, although, they are welcome to add some subscribable channels we created.

I'm sure I have more questions.


Carol Hopkins
Seton Hall University

Luminis Version:




$CP_ROOT/usask-bin => local binaries
$CP_ROOT/usask-data => local data
$CP_WEBINF/classes/ca/usask => local java classes
$CP_DOC_ROOT/media/usask => local media files (images, css, js)
$CP_ROOT/webapps/usask_jsp => local JSPs (we made a new Tomcat context)

As far as channel categories, our structure is flat. We have top level categories only:

Administrative Tools
Campus Life
Campus News
Employee Tools & Info
Help & Support
My College
Personal Tools
Training & Development

Thanks, Todd. Do you put the images under media even if the images are for a Targeted Content Channel? I noticed in a clean install, the subdirectories under media have a structure like that of a class file (org..jasig... blah blah).

I think we've been "hacking" the directory structure for a couple of years and it's time to try to do it "right". :)

We don't have any images for TCC. For channels where images are used, these are usually controlled by our web content management system.


We broadly divided our channels into categories - we are not a fan of subcats either. Mainly, our homegrown content (custom apps) are usually in one channel. Makes it easier for us to look for and modify/update these channels - these seem to be the ones that we work with most.

I must say here that we are somewhat of a unique org since we have no students.

Other channels categories are the typical ones:
Organization for org channels
News and Media for news/rss feeds etc. (we have no rss content that we want not to make public so that one is easy)
Banner for Banner channels ...
and so on.


We generally use


Where site is an NFS (ZFS) share between portal servers and resource tier

We then have sub-directories



For the channel category manager we just have top level categories with a letter in front for sorting

a. Applications
b. News
c. Academic
d. Campus life
e. Useful links
f. Help
g. Other

There is one that doesn't quite fit our desire!

University of Leeds, UK