JBoss Community

Re: Making eXo Platform available at the root URL using Apache

created by Henri Gomez in JBoss Portal - View the full discussion

May I suggest you following settings ?

 

httpd.conf :

 

ProxyPass  / ajp://localhost:8009/

ProxyPassReverse / ajp://localhost:8009/

ProxyPreserveHost On

 

 

You could use also mod_jk :

 

workers.properties :

 

worker.list=w1

 

# Set properties for worker1 (ajp13)

worker.w1.type=ajp13

worker.w1.host=localhost

worker.w1.port=8009

 

httpd.conf :

 

...

JkMount  /* w1

...

 

 

biscuit a écrit:

 

I have been asked to front an eXo Platform installation (running on Tomcat) with Apache HTTPD in such a way that URLs that are normally available at:

 

     http://myserver:port/portal/private/myportal

 

are made available at:

 

     http://myserver/

 

I have made some progress with lots of ProxyPass and ProxyPassReverse directives mapping /public, /eXoResources, etc to their corresponding ajp:// URLs, before having a final catch--all entry:

 

     ProxyPass  / ajp://localhost:8009/portal/private/myportal/

     ProxyPassReverse / ajp://localhost:8009/portal/private/myportal/

 

But it still gets stuck on various bits of JavaScript and so-on which are generated on the Tomcat side and refer to the Tomcat URL. There are various properties that can be set to control how this JavaScript gets generated:

 

     eXo.env.portal.portalName

     eXo.env.server.context

     eXo.env.server.portalBaseURL

     eXo.env.portal.context

 

However, documentation on eXoPlatform's website is a bit sparse and the only thing I can find is this, which seems to avoid modifying configuration on the Tomcat side, and instead relies on Apache doing massses of in-line modification of Tomcat's responses using mod_substitute, which I really don't like the look of.

 

So I have a few questions:

 

  • Is this approach fundamentally flawed - is it actually possible to achieve what we want or does it introduce ambiguity into the URLs (eg what do we do with the few /public/ URLs we have)?
  • Will the above properties help?
  • Is the use of mod_substitute the only way of achieving this?

 

Thanks in advance for any help!

 

Rich

biscuit a écrit:

 

I have been asked to front an eXo Platform installation (running on Tomcat) with Apache HTTPD in such a way that URLs that are normally available at:

 

     http://myserver:port/portal/private/myportal

 

are made available at:

 

     http://myserver/

 

I have made some progress with lots of ProxyPass and ProxyPassReverse directives mapping /public, /eXoResources, etc to their corresponding ajp:// URLs, before having a final catch--all entry:

 

     ProxyPass  / ajp://localhost:8009/portal/private/myportal/

     ProxyPassReverse / ajp://localhost:8009/portal/private/myportal/

 

But it still gets stuck on various bits of JavaScript and so-on which are generated on the Tomcat side and refer to the Tomcat URL. There are various properties that can be set to control how this JavaScript gets generated:

 

     eXo.env.portal.portalName

     eXo.env.server.context

     eXo.env.server.portalBaseURL

     eXo.env.portal.context

 

However, documentation on eXoPlatform's website is a bit sparse and the only thing I can find is this, which seems to avoid modifying configuration on the Tomcat side, and instead relies on Apache doing massses of in-line modification of Tomcat's responses using mod_substitute, which I really don't like the look of.

 

So I have a few questions:

 

  • Is this approach fundamentally flawed - is it actually possible to achieve what we want or does it introduce ambiguity into the URLs (eg what do we do with the few /public/ URLs we have)?
  • Will the above properties help?
  • Is the use of mod_substitute the only way of achieving this?

 

Thanks in advance for any help!

 

Rich


Reply to this message by going to Community

Start a new discussion in JBoss Portal at Community