[Mono-list] XSP server in a VirtualHost environment (suexec?)

Jesse Pasichnyk mono-list@pasichnyk.net
Mon, 13 Dec 2004 10:46:12 -0700 (MST)


I am in the process of implementing a large scale PHP4/PHP5/ASP.NET (mono)
hosting environment on Apache2.  I currently have my PHP4 and PHP5 cgi’s
compiled and have the running suexec.  I recently setup the XSP server and
mod_mono in attempt to get name based virtualhosting up and running for
asp.net as well.  Right now I’m at a point where I have the name based
virtual hosts up and running with ASP.NET using unique mono_socket’s and
.wapi directories per application (located in the users home directory). 
However these files are created/owned by apache right now, meaning that
wherever they are located needs to have write permissions by apache (kinda
iffy).  My ultimate goal however, is to get this system up and running
with all user code running as its corresponding user as to minimize
administration issues (directory permissions etc) and to limit the scope
of their application to their home directory  (chroot).  My currently
setup for user accounts is using the JailChroot project so all users are
chrooted to their home directories upon login of any sort.  I have done
the same with the suexec/cgi  for php4 and php5.  I would like to
ultimately produce the same result with ASP.NET.

I spoke with someone lastnight in #mono that suggested running separate
instances of the XSP server for each application I want to host, then
proxying the requests for asp.net files with apache and mod_proxy to the
appropriate XSP server (each would also have to be running on a different
port).  I realize that in this case, there would have to be a huge number
of xsp servers running and I’d be curious about the resources needed by
this.  This just doesn’t seem very scalable to me.  I realize I could
break off my XSP servers to a privately accessible cluster but it seems
like this would still make it hard to get some solid redundancy for this
platform, seeing that the mod_proxy would be forwarding to a specific
private IP.

Anyone have any ideas on how to implement this sort of application server
environment?

Input of any sort would be much appreciated,

--
Jesse