[Mono-list] beta2 xsp / mod_mono problem

Mike Morano mmorano@mikeandwan.us
Fri, 4 Jun 2004 18:24:38 -0400

Hi All,
  I have been trying to upgrade to beta2 for my web applications with limited 
success (they worked just fine in beta1, using xsp standalone, and mod_mono).  
I made sure that I completely removed all old pieces of the beta1 install.  I 
was wondering if anyone else has been running into these same issues, or if I 
have a misconfiguration somewhere.  If not, I will add to bugzilla.

arch: x86  (athlonXP)
distro: Gentoo
kernel: 2.6.6 
glibc (w/ nptl): glibc-2.3.3
gcc: gcc 3.3.2
icu: 2.6
apache: 2.0.49
mono: beta2 (mono-0.95)
xsp: beta2 (xsp-0.14)
mod_mono: beta2 (mod_mono-0.10)
install prefix (mono, xsp, mod_mono): /usr/local
..please let me know if there is any more info that might help.

The following are the odd bits I have experienced:

1. SharpZipLib
When running XSP and trying to access the webapp the first time, it reported 
that it could not resolve a dependency from ByteFX.Data, namely SharpZipLib.  
The app compiled fine without any special work, however, when running the app 
we do get this error.  Note: I recompiled it fresh with the beta2 release.  I 
was able to work around this by copying in the SharpZipLib dll into the 
webapp /bin directory.  Have I configured something wrong, or is this a bug?

2. mod_mono and XSP hang
I have run into some strange behavior where both mod_mono and XSP hang after a 
few http requests.  By hang, when I make a request, the browser continues 
trying to get the response, but it never comes.  This typically leaves a 
partially rendered page with (usually) images missing, though sometimes there 
is no response at all for a request.  Unfortunately no exception comes 
either, and to kill XSP, I am forced to hit Ctrl-C (enter does not work after 
the hang).  

I thought it might be thread/nptl related, so I upgraded from glibc 2.3.2 to 
glibc 2.3.3, but the problem persisted.

I then tried modifying my apache configuration to use "AddHandler 
mono .aspx .ascx .asax .ashx .asmx .cs .config" rather than "SetHandler 
mono", and much to my surprise, it worked!  Based on this configuration, all 
content files will be served through apache, without mod_mono getting in the 
way.  Is there something I have incorrectly configured (either mod_mono or 
xsp or system deps)?  Ideally I would be able to use apache/mod_mono for my 
"production" environment, and XSP for development.

Not sure if this is helpful, but it is how I start XSP:
mono /home/mmorano/xsp-0.14/server/xsp.exe --verbose --port 8888 
--appconfigfile /home/mmorano/code/webapp/mono.webapp 
--root /home/mmorano/code/webapp/production

and this is my apache config (either SetHandler or AddHandler is commented 

DocumentRoot /path/to/website
MonoExecutablePath "/usr/local/bin/mono"
MonoServerPath "/usr/local/bin/mod-mono-server.exe"
MonoApplications "/:/path/to/website"
MonoApplicationsConfigFile "/path/to/website/mono.webapp"
MonoDocumentRootDir "/path/to/website"

<Directory /path/to/website>
    #SetHandler mono
    AddHandler mono .aspx .ascx .asax .ashx .asmx .cs .config
    <IfModule mod_deflate.c>
      SetOutputFilter DEFLATE
    DirectoryIndex index.aspx
    Options -Indexes FollowSymLinks MultiViews
    AllowOverride All
    <IfModule mod_access.c>
      Order allow,deny
      Allow from all