Atom installation behind a reverse proxy

60 views
Skip to first unread message

hil...@gmail.com

unread,
Oct 23, 2018, 3:26:39 PM10/23/18
to AtoM Users
Hello all ...

I have installed Atom v2.4 from scratch following the installation instructions of the accesstomemory.org site in a local server (using Nginx) and it is working fine when I test it with it's local IP addres. To be able to access this installation from outside our local network, I have set up a reverse proxy (I have been doing the same thing for many services, included a couple 1.x ica-atoms that are still in production).

The problem is that, when accessing through the proxy, I land on the Atom 2.4 installation but it is unusable.

Here the reverse proxy config on my router ('my.site'):

<Location "/ecuatom">
ProxyPass  http://172.22.185.22:8823
ProxyPassReverse http://172.22.185.22:8823
allow from all
</Location>

If I use http://172.22.185.22:8823 as the address, it works like a charm, but if I use 'my.site/ecuatom' it looks like this:


Then, every link in the page ignores the "ecutemp" portion of the URL ... so, if I click Home, instead of going to 'my.site/ecuatom'  it goes to 'my.site' ... and of course it gives a 404 error as it does not find index.php there.

I'm guessing that if I can move the installation to a subfolder of the document root of the local server (for ex. http://172.22.185.22:8823/atom) it would work as intended ... but I cannot find any clue as to what should I change in the config files to achieve that.

Any help would be most welcome.

Best regards


Corinne Rogers

unread,
Oct 29, 2018, 11:52:14 AM10/29/18
to AtoM Users
Hi Martin,

I posed your question to our developers and received this reply:

You need to use the /ecuatom string on ProxyPass and ProxyPassReserve lines, for example:

<Location "/ecuatom">
allow from all
</Location>

This is when the "/ecuatom" location is configured in AtoM host too. You may need to use some Rewriterules or a substitution to change the body response in apache reverse proxy, for example: 

<Location "/ecuatom">
ProxyPassReverse http://172.22.185.22:8823 
  AddOutputFilterByType SUBSTITUTE text/html
  allow from all
</Location>

As you suggested, the easy way is to change default AtoM location at nginx (default /): 
  • /etc/nginx/sites-enabled/atom
Let us know if this helps!

best regards,
Corinne

-----
Corinne Rogers
Systems Archivist
Artefactual Systems
Reply all
Reply to author
Forward
0 new messages