I've got Rails running pretty well, but with a catch that is kind of
specific to our environment, maybe someone can help.
Basically we have a Win2k/IIS5.0 server (this is the c: drive) that
only has the site configuration and the perl, php, .net and ruby stuff
on it. All the data files are supposed to be on our netApps filer
(call this filer1). This is our written IT Security Policy and I am
unaware of a way to get an exception.
If I install my rails app on the c: drive, rails works fine under both
webrick and iis on port 8080. It runs through fastcgi and everything
that is supposed to happen does. It performs adequately.
However, when I host the rails app on the filer, it stops working
under IIS but continues to work under webrick, the only exception
being that it no longer seems to have access to
request.env["AUTH_USER"] as returning the correct information. At this
point Fastcgi under iis doesn't appear to do anything. By which I
mean, it is supposed to trigger 5 rubyw.exe processes which stay in
memory after the request is made. It doesn't do this. The only
difference between the two apps is that the registry value associated
with triggering fastcgi points to the c: drive dispatch.fcgi file
(Args REG_SZ c:\iamstinky\public\dispatch.fcgi)for the version that
works completely and the registry value for the one that only sort of
works under webrick points to dispatch.fcgi on filer1 (Args REG_SZ \
The actual error I get, for the filer1 version, is the ever so helpful
"Server error, unable to connect to fastcgi server." which can mean
just about any thing from my googling. I'm left with two possibilities
at this point. 1)the fact credentials are being dropped somewhere
along the way is causing the call to dispatch.fcgi to fail because the
system sees it as an anonymous request and we require authentication
for access to all our network resources. This may be a rewrite issue
that requires a more robust solution than the free rewriter I
downloaded. 2)there is somekind of prohibition against one server
triggering an executable on a different system. On the filer version
dispatch.fcgi and its associated .dll are on two physically different
machines. No one here knows enough about either iis or the filer to
tell me if this is a reasonable possibility.
For those wondering there's a rewrite rule that routes all rails
traffic to dispatch.fcgi, which by virtue of the registry setting
causes the traffic to go to the correct rails application. This is
Additional disclaimer, I cannot use any other server on this machine.
It's IIS or no Rails. And there's no possibility of upgrading to
win2k3 or iis 6.0 before January of 2008.