IIS, new FastCGI support, and Rails

The Microsoft webserver, IIS, is finally implementing FastCGI for versions 5.1, 6, and 7. Zend (the PHP people) are working with MS to get PHP supported, and PHP5 is supported in the technical preview release out now:

Would it be possible for someone on the core team to contact Mike Volodarsky:

to discuss getting this working on RoR.

Mike has already said getting RoR compatibility is one of his goals: http://forums.iis.net/ShowThread.aspx?PostID=1448886&PermaPostID=1449597#1449597

But it doesn't seem to be working at the moment with Ruby: http://forums.iis.net/ShowThread.aspx?PostID=1448886&PermaPostID=1449312#1449312

If RoR could run as easily on IIS servers as it does on mongrel and webrick, or even apache and lighttpd, then it would be a huge boon to the community. I don't know enough about ruby or Windows to be of any help personally <newb> but I am hoping someone out there does!

Primary benefit to me (and many others on blogs/forums I've read) of getting RoR on IIS: Single Sign On through Active Directory or NTLM. If a user has logged into their Windows machine, then they are automatically logged into internal company webapps, bypassing the login screen. This is a requirement in the design spec of the apps I am building.

Thanks, Peter

I have talked to Mike about this previously, and he emailed me a week or so back and asked if I’d had a chance to check out the latest builds, I will make sure to follow up with him and pass on your request and get him more engaged with our community.

Josh

Awesome! It's good to know you were already working on it! I hope this topic gets more exposure, because IIS is the standard at the office, and I want to use Rails at the office.

Peter

Josh, I am looking forward to your email. We are picking up momentum in trying to get other frameworks onboard the FastCGI train, but unfortunately having some issues with Ruby due to our lack of experience with it. Your help will be instrumental in getting RoR running on Windows better - not every day an opportunity like this comes along :slight_smile:

Anyway, bounce me an email and we'll chat about it.

Mike

P.S. Peter, thanks for being proactive!

Peter Boling wrote:

Is there further discussion on this topic happening in a different forum or a site that is showing status and existing issues with the RoR on IIS with FastCGI? I've been looking for a solid solution to this problem for a few months as I'm looking at transitioning to RoR but have the limitation of having to use IIS for the webserver. So, if you guys get this working, it will be much appreciated by me.

Thanks!

Ryan

@Ryan:

Contact me directly… I can point you to some materials I wrote. I currently deploy lots of apps behind IIS using various techniques. None of them are ‘built in’ but I’m investigating this new method right now.

Anyone else interested can contact me as well - don’t want to hijack this thread.

Thanks Brian. Are you working on RoR using FastCGI or using Mongrel. My environment is (very unfortunately) limited to a strict IIS environment without allowing Mongrel to sit behind IIS, so I'm really interested in the FastCGI alternative. Thanks for responding and for your help.

-Ryan

@Ryan:

I am running it behind IIS using mongrel or Apache or gasp even Lighttpd on Linux. I’m not entirely sure why you are limited to IIS only… Mongrel runs very nicely as a Windows NT service. That’s unfortunate. You’ll have to try to convince them otherwise; trust me… it can be done :slight_smile:

Until MS fixes the issues with their isapi_fcgi.dll for Ruby, you can take a look at my Ruby On Rails For IIS Fast-CGI installer hosted on MS new open source site...

Thanks, B

Brian Hogan wrote:

Do any of you know whether the Ruby installation includes a FastCGI-compliant executable? This is necessary in order to interoperate with any FastCGI server over the FastCGI protocol (http://www.fastcgi.com/devkit/doc/fcgi-spec.html).

So far, it doesnt appear that Ruby.exe or Rubyw.exe are it - although maybe they require some command line switches or environment variables to kick into FastCGI mode.

This appears to be the last blocking factor for us to get Ruby going with the FastCGI support we are building (Installing PHP on Windows Vista with FastCGI | Microsoft Docs).

Any information much appreciated.

Thanks,

Mike

This wiki thread may be of some use to you: http://wiki.rubygarden.org/Ruby/page/show/UsingRubyFastCGI

Do you need to be using a FastCGI dispatcher like: ? http://raa.ruby-lang.org/project/ruby-cgi/

This is how RoR/Apache2/FastCGI is done, which may be worth looking at: http://blog.inlet-media.de/the-perfect-ruby-on-rails-with-apache2-and-fastcgi-setup-on-debian-sarge

Hope this helps...

-Ryan

Supposedly the newest release of Microsoft's FastCGI, which is now at Technical Preview 2, has experimental ruby support. http://mvolo.com/blogs/serverside/archive/2007/01/31/Turbo_2D00_charge-your-PHP-applications-with-IIS-FastCGI-Technical-Preview-2.aspx

(Look near the bottom of the post for the bit about ruby and the promise for more to come!)

Thanks Mike and IIS team!

Shhh! You’re not supposed to be telling anyone about that yet.

Well, what good would "experimental support" be if noone knows how to "experiment" with it :slight_smile: So, I finally found some time to document the steps necessary to get Ruby on Rails running with the FastCGI TP2 release: http://mvolo.com/blogs/serverside/archive/2007/02/18/10-steps-to-get-Ruby-on-Rails-running-on-Windows-with-IIS-FastCGI.aspx.

I would love for you guys to try this out, and let us know of any issues you find.

Also, thanks go to Brian for helping out with lots of RoR questions I had while investigating FastCGI support for it ...

Looking forward to your feedback!

Mike IIS Team