[kforge-dev] Thoughts on url layout for knowledgeforge

Rufus Pollock rufus.pollock at okfn.org
Mon Jul 11 09:51:12 UTC 2005


URL layout:
+++++++++++

Terminology
===========

The two ways of adding to a url i.e. prepending or appending otherwise
known as:
   1. subdomaining ie. add abc to xyz.com/ gives abc.xyz.com/
   2. appending (normal) add abc to xyz.com gives xyz.com/abc

An item is primary if it occurs before another in the URL string. e.g.
suppose we have:

   xyz.com/project/service

Then project is primary and service secondary. Conversely if we have:

   xyz.com/service/project

Then service is primary and project secondary. This definition also
applies to prepending, i.e.

   project.xyz.com/service

Implies that project is primary and service secondary

Sourceforge (Gforge)
====================

Sourceforge/Gforge has the following layout:

Clicking on a project on the front page takes you to:

   fqdn/projects/project_name

 From there clicking on any of a service takes you to:

   fqdn/service/?group_id=...
   (e.g. fqdn/scm/?group_id=...)

So service is now primary and project secondary.

On sourceforge clicking on home page takes you to:

   project.fqdn/

Which is fully controlled by project owners (no gforge stuff).

Interestingly gforge also uses prepending for services so while the
project tab SCM takes you to:

   fqdn/scm/?group_id=xxx

The links off there to the actual scm system (svn in this case) use
scm.fqdn/.... Similarly the default gforge install provides for
lists.fqdn/ which is for the mailing lists (though as these aren't
working yet I haven't investigated how this integrates with the
fqdn/mail/?group_id=xxx page)

Remarks
-------

1. Neither setup seem to directly support private vs. public
information. Since we are using Apache for a lot of our access control
there are some benefits from having the 'private' section as close to
the root of the url as possible (so we only need to but authentication
config in apache file once)

2. While certain services such as SCM, tracker etc can reasonably be
seen as primary services other stuff such as www, dav, wiki quite
obviously need to be appended to primary project domain i.e. want:
project/wiki (don't want /wiki/project). So I think there is no simple
answer to how we order priority between projects and services

3. Need to distinguish between the project administration pages and the
project site pages (www, wiki etc)
   * In some cases e.g. kforge the administration pages are the main item
   * In other cases such as okfn site primary item are the site page

Plan for KnowledgeForge
=======================

Administration and project management as for gforge but assign some
things to site pages section such as wiki, www and dav, i.e.:

project.kforge.net
   /wiki
   / (www)
private.project.kforge.net/
	/wiki (if necessary)
	dav access





More information about the kforge-dev mailing list