I am running a website in a format
where only http://mydomain.com has public IP.
It is running on Apache.

Now I configured a reverse proxy to be able to reach the server where
ocw.openitup.in is hosted on Zope
what is happening is
 request which is coming to a domain ocw.mydomain.com

first reaches the server  mydomain.com (which has a public IP).

Then is being forwarded internally to where ocw is present like this


i.e. Apache at mydomain.com contains

ProxyPass   URL_A/VirtualHostBase/http/URL_B/VirtualHostRoot/eduCommons
ProxyPassReverse   URL_A/VirtualHostBase/http/URL_B/VirtualHostRoot/eduCommons

where URL_A is internal IP of machine where the site is hosted for a
request to be able to reach Zope

Zope documentation page says it should have VirtualHostBase and
VirtualHostRoot as its path elements.
Which in above format I have done.

But if some one opens the domain


then the CSS which is getting loaded in browser when I click view source

it shows

a href="URL_B/eduCommons/path/to/CSS"

URL_B is internal IP of server where eduCommons is running.

Note that in a users browser on internet it does not show URL_A that means that
request coming from internet has been able to reach
what ever URL_A means in above directives.

I have checked it by replacing with hostname of server on which it is running.
The CSS does not loads.

If I use hostname instead of URL_B then


tries to load CSS, Javascrips and images from


now Hostname_B is also known only to then computers which are in my LAN.

Any request  on internet does know any thing about it.

I checked replacing Hostname_B with

 ocw.mydomain.com even then
the broken element in page source shows it is trying to fetch the
CSS,Javascript or images from


the above URL is in page source when client browser tries to load
CSS,Javascript or image on internet.

So what is happening is in the reverse proxy server

which is the first place where the request are coming
it is forwarded internally as


what ever is present in place of URL_B that the client browser on
internet is trying to load which obviously is not present.

I have also checked by replacing URL_B with URL_A

ProxyPass   URL_A/VirtualHostBase/http/URL_A/VirtualHostRoot/eduCommons
ProxyPassReverse   URL_A/VirtualHostBase/http/URL_A/VirtualHostRoot/eduCommons

then on a client browser on internet the CSS is being loaded from

where URL A is again only known to my LAN and in above ProxyPass
Directive it is taken from second occurrence of URL_A

This URL_A string which some one is getting in a client browser on
internet is again internal IP of my machine where I hosted EduCommons.

Zope maillist  -  Zope@zope.org
**   No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-dev )

Reply via email to