I am developing a site that is going to be used as somewhat of a cloud service, we have a number of customers with a loose connection to each other via a parent organization. The site will look and feel similar across the different customer organizations but the contents will change with regards to what sub organisation the end user is interested in.
The customer organisations all have their own separate web sites and will post links on them to their implementation of our webapp. Users in our system will be able to log in to all sites once they have registered on one of them, similar to how logins works here on stackexchange.com.
We have been discussing weather to use URLs structured either by sub-domains or using a "sub folder" approach, i.e. (given that our customers are called alice and bob):
"Subdomain":
http://alice.ourwebapp.com/...
http://bob.ourwebapp.com/...
"Subdirectory":
http://www.ourwebapp.com/alice/...
http://www.ourwebapp.com/bob/...
We are also considering creating a site for collecting the contents of all sub sites under one URL.
What would be your approach to differentiating between the sites sub organization URLs? Are there other solutions to this problem that we have not thought of?