Forum OpenACS Q&A: Replacing AOLserver with Apache

Collapse
Posted by J Svete on
Hi Members,

I am right now doing great with a installation of OpenACS 4.5 with
Oracle 8.1.6 and AOLserver on a Linux 7.0 box and have created a few
modules of myself on it.

I have this strange query that
"Will it be possible to replace AOLserver with Apache and keeping
everything the same?"
If yes, then please provide me with all the installation guide or help
to do the same.

I was also looking at postings related to "mod_aolserver" but I was
not able to get a clear picture of the same. Questions like
1) From where can I download?
2) Does it has any relationship with Oracle, or is it meant for
postgreSQL only?

etc. are still unanswered.....So help me out

Thanks in advance.

Collapse
Posted by Don Baccus on
There is work underway to get a working solution under Apache 2.0.

However, unless you're absolutely compelled to switch for reasons entirely outside of your control, why bother?  Why fix what ain't broke?

I gave up religion when I was a kid, myself ...

Collapse
Posted by David Kuczek on
Hello Don,

could you elaborate a little on that solution?

Trying to replace AOLserver with Apache is like trying to replace
Zope with Apache or WebLogic with IIS. They're two completely
different things. You cannot replace AOLserver with Apache
because they play completely different roles in the architecture.
AOLserver is an application platform with a Tcl interpreter, a
powerful database API, and a really fast threaded architecture.
Apache is a web listener with a standardized API for adding
different means of processing web requests.

If you want to compare AOLserver to something else, compare it
to mod_perl. You might run Apache, mod_perl, and PostgreSQL
as one architecture. You could also run Apache, mod_proxy-to-
AOLserver, and PostgreSQL as another architecture. AOLserver
is your *application server*. Now it just so happens that
AOLserver is a darn good web listener, too. So you can take out
the Apache layer and keep just AOLserver and PostgreSQL.

When Don says there's a solution in the works for Apache 2.0,
what he means is that there is a mod_* solution in the works
that will allow the easy layering of Apache 2.0 on top of
AOLserver (or onto an AOLserver-like component that also does
Tcl evaluation in a threaded environment with all the AOLserver
APIs).

Now take a step back. If you have two architectures, one of which
requires 2 components to function, the other one of which
requires these same 2 components to function *plus* a third
one.... which one presents less risk, increased simplicity, and
generally a more sane platform?

AOLserver is not a web server. It is an application server. Layer
all the web servers you want on top of it if it helps solve a
marketing problem, but it will only make your technology platform
that much more complicated.

Collapse
Posted by Hazi Gharagozlou on
Ben,

Thank you for your clarifications. Do I understand correctly that a site could have Apache listening on port 80 and with "mod_proxy" requests can be redirected to an AolServer listening on another port or another server?

Are there other ways for Apache and AolServer to run on the same server?

Collapse
Posted by Jon Griffin on
Yes you can do that, I am doing it now. I hate the thought of running Apache and Aolserver. AOLserver is much cleaner and architecturally better, but I have been to lazy to port Jerry Ashers patches to 3.4.

I also heard that AOLserver 4.0 will have something similar, but I couldn't find anything on the site about that. If you have seperate IP's and just want to run different sites then you don't need a proxy. You only need a proxy (and I think squid will also work) if you have one external IP and are relying on name based hosting.

Collapse
7: Proxying with apache (response to 1)
Posted by Ivan Histand on
I'm also using apache to proxy ACS sites.  Basically I have aolserver listening on localhost only, and Apache is listening on the external interface port 80, the virtual server directives read the host-header information and proxy to the appropriate server on localhost.

After significant research and experimentation, I find this to be the easiest and most flexible method to do virtual hosting on one IP address.

I'd be glad to provide sample configuration files if you'd like.

Collapse
Posted by Michel Henry de Generet on
OpenACS could also be used as a Proxy to legacy servers, just mount the package Gatekeeper on some point in your hiearchy. Note that gatekeeper is much slower than mod_proxy in Apache (because of the dabase access) but you could apply standard OpenACS permissioning on such URLs.
Collapse
Posted by Jade Rubick on
Ivan, if you don't mind posting your config files, that would be
really helpful. I may be doing a setup like that at some point in
the near future.
Collapse
Posted by Talli Somekh on
Ben, just wanted to thank you for that cogent and succint explanation of AOLserver vs Apache. We should have that on the front page or in the docs in the Intro section so that people can get up to speed on the stack much quicker.

talli

Collapse
11: Re: Proxying with apache (response to 7)
Posted by Isaac Rodriguez on
Hi, Ivan.

I'm in my first installation of OpenACS (I'm a newbie in this topic), and I need to installl OpenACS in an Apache 2 enviroment. Could you please send me your configurations file?.

Thanks a lot in advance for your help.

Kind regards,

Isaac.

Collapse
Posted by Brad Duell on
When I've used mod_proxy with apache, I've used the following in my conf file (foo.com running on 8001):

LoadModule proxy_module      lib/apache/libproxy.so

AddModule mod_proxy.c

<VirtualHost *>
    ServerName www.foo.com
    ServerAlias *.foo.com
    ServerAlias *foo.com
    Options Indexes Includes FollowSymLinks MultiViews

    ProxyPass / http://127.0.0.1:8001/
    ProxyPassReverse / http://127.0.0.1:8001/

    CustomLog /var/log/httpd/foo_log combined
</VirtualHost>