portals-jetspeed-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Helmut Eggebert (JIRA)" <jetspeed-...@portals.apache.org>
Subject [jira] Commented: (JS2-317) Virtual Portal Implementation
Date Fri, 09 Sep 2005 17:07:31 GMT
    [ http://issues.apache.org/jira/browse/JS2-317?page=comments#action_12323061 ] 

Helmut Eggebert commented on JS2-317:

Another very important capability that should be included in this feature is host control
for ssl and static content.

For example, if a user is browsing http://www.foo.com/portal and then clicks on login the
host for login should be ssl and is likely to be a wildcard (shared) certificate.  Thus the
link to login should not be addressed http://www.foo.com/portal/login or https://www.foo.com/portal/login
but it should be able to be configured to https://foo.securedomain.com/portal/login and then
when logging out the link should not redirect to http://foo.securedomain.com/portal/logged_out
but http://www.foo.com/portal/logged_out

Also, if a high traffic site wants to separate static content then a content prefix should
be able to be set as the path to this content.

These capabilities are really controls on how urls are built when sent to the browser.  A
form to create these settings could have the following fields as an example (concepts from
the example of the OFBiz project www.ofbiz.org):

Http Host
Http Port
Https Host
Https Port
Standard Content Prefix
Secure Content Prefix

Example settings could look like this:

Http Host = www.foo.com
Http Port = 80
Https Host = foo.securedomain.com
Https Port = 443
Standard Content Prefix = http://www.staticfiles.com/images
Secure Content Prefix = http://www.staticfiles.com/images

Thanks for considering this capability - it will really make Jetspeed more flexible for large
scale use on many domains with high traffic!

> Virtual Portal Implementation
> -----------------------------
>          Key: JS2-317
>          URL: http://issues.apache.org/jira/browse/JS2-317
>      Project: Jetspeed 2
>         Type: New Feature
>     Versions: 2.0-FINAL, 2.0-M4
>  Environment: Apache Web Server, Apache Jakarta Tomcat and mod_jk or mod_jk2 connectors
>     Reporter: Helmut Eggebert
>     Assignee: Randy Watler

> This Issue is to implement True Virtual Portals
> The Apache Web server implements Web virtual hosting in two ways: IP-based virtual hosting
and name-based virtual hosting.  With name-based, the Web server listens on the IP addresses
configured on the host, and serves resources from the relevant Web site based on HTTP request
headers from the Web client.
> When Apache Web server is connected to Tomcat via a mod_jk or mod_jk2 connector, a host,
port and a worker are specified in a properties file (ex. localhost at 8009 with ajp) and
are associated to uri contexts (ex. www.foo.com/portal/*).
> We have a requirement to set up many (ex. 100+) virtual hosts on Apache Web server, and
one host, port, and worker for many uri contexts in the connector.  This is what we have done
for other web applications.  Each web application can have a different host and port but the
same web application must only have one instance (ex. one host and port) for many different
Apache Web server virtual hosts (ex. Web sites).
> Thus we would like to set many virtual hosts to have one host and port for the ajp worker
in the connector properties file that points to the running instance of Jetspeed 2.  Of course
there will be many uri contexts because there are many virtual hosts (sometimes several contexts
per host).  For each virtual host, there should be a virtual portal.  A virtual portal should
be able to have a customizable view look and feel, customizable configuration of displayed/included
portlets, and a differentiated set of users.  Of course, if this is not all possible in M4,
you could just make the customizable view look and feel and customizable list of displayed/included
portlets a goal and set the differentiated users for a later milestone.
> I have seen this done in the past with other open source projects.  For example, OFBiz
( www.ofbiz.com ) embeds Tomcat and, in one instance, it can run N number of online stores.
 Each virtual store has a customizable look and feel and has users, product catalogs and orders
differentiated.  I am familiar with how this app does it so I will explain it as a possible
approach to this requirement.
> If you log into the ofbiz catalog administration and create a "new store" you can configure
it with different view template files, default name and other differentiating elements.  Then
you need to log into content administration and create a "new website" and associate it to
the store id created earlier.
> Then with the app shut down, you copy a webapp directory ofbiz called "ecommerce" and
rename it to something like "ecommerce1".  Then you do the following 3 config edits:
> 1) Edit the WEB-INF/web.xml file in the recently copied and renamed ecommerce1 as follows:
> <context-param>
>    <param-name>webSiteId</param-name>
>    <param-value>WebStore1</param-value>
>    <description>A unique ID used to look up the WebSite entity to get information
about catalogs, etc.</description>
> </context-param>
> 2) Edit the ofbiz-component.xml file in components/ecommerce/ and add the new webapp
context as follows:
> <webapp name="ecommerce1"
>    title="Ecommerce1"
>    server="default-server"
>    location="webapp/ecommerce1"
>    mount-point="/ecommerce1"
>    app-bar-display="false"/>
> 3) Edit the ofbiz-component.xml file in components/ecommerce/ and change the new webapp
context you just added to make the mount point /store and add a virtual host element as follows:
> <webapp name="ecommerce1"
>    title="Ecommerce1"
>    server="default-server"
>    location="webapp/ecommerce1"
>    mount-point="/store"
>    app-bar-display="false">
>    <virtual-host host-name="www.foo.com"/>
> </webapp>
> With this approach, the goals are accomplished with one instance.  The OFBiz instance
knows which webapp, location="webapp/ecommerce1", is associated to <virtual-host host-name="www.foo.com"/>
and that mount-point="/store"
> Hope this helps!
> By the way this is the url for the ofbiz MIT Open Source license:
> http://www.ofbiz.org/ofbizmitlicense.html

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org

View raw message