<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Ok, this should fix FastCGI (and also CGI).<br>
<br>
Cgi.process has been factored out into a seperate handler class and
adapted to the way things currently work.<br>
<br>
I've tested both CGI and FastCGI with Lighttpd and wrote a Tip on
OxyWTF on how to configure Lighttpd for FastCGI.<br>
<br>
(ab)<br>
<br>
Arne Brasseur schreef:
<blockquote cite="mid47183AAD.2040303@arnebrasseur.net" type="cite">
<pre wrap="">Patience, I'm almost done with this.
(ab)
Robert Mela schreef:
</pre>
<blockquote type="cite">
<pre wrap="">Here's an initial cracking of the nut. Needs much refinement.
I have no idea whether this handles posts or not -- my hope is all the
gnarly details are now handled by handle_context in adapter.rb.
If the approach is acceptable then there's probably a lengthy method
in raw/cgi.rb that can be removed.
require "raw/adapter"
# No multi-threading.
Og.thread_safe = false if defined?(Og) and Og.respond_to?(:thread_safe)
module Raw
# A plain CGI adapter. To be used only in development
# environments, this adapter is *extremely* slow for
# live/production environments. This adapter is provided for
# the sake of completeness.
class CgiAdapter
include AdapterHandlerMixin
def start(server) # for server in context of CGI this is start,
middle and end!
@application = server # expected by handle_context in adapter.rb
context = Context.new(server)
context.env = ENV
uri = ENV['REQUEST_URI']
script_name = ENV['SCRIPT_NAME']
context.env['REQUEST_URI'] = uri.sub(/#{script_name}/i, '')
handle_context( context )
puts "Content-type: #{context.content_type}"
context.response_headers['Content-length'] =
context.output_buffer.length
context.response_headers.each { |k,v| puts "#{k}: #{v}" }
puts "\n"
puts context.output_buffer
end
end
end
</pre>
<blockquote type="cite">
<pre wrap="">Arne Brasseur wrote:
</pre>
<blockquote type="cite">
<pre wrap="">This seems the way to go, but unfortunately mod_proxy is not an
option for me. I'm on shared hosting with little chance of changing
apache's configuration, except by .htaccess files. It seems both cgi
and fcgi adapters are simply broken because of changes to the
adapter interface. E.g. what used to be class methods are now
instance methods, but that's not all.
Would it be hard to fix them? Or just one of them? I'm not too
concerned about performance at this point, if it runs I'd be happy.
If they're not being fixed please add a big BROKEN sign or remove
them altogether.
Thank you (once again)!
(ab)
</pre>
</blockquote>
<pre wrap="">_______________________________________________
Nitro-general mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Nitro-general@rubyforge.org">Nitro-general@rubyforge.org</a>
<a class="moz-txt-link-freetext" href="http://rubyforge.org/mailman/listinfo/nitro-general">http://rubyforge.org/mailman/listinfo/nitro-general</a>
</pre>
</blockquote>
<pre wrap="">_______________________________________________
Nitro-general mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Nitro-general@rubyforge.org">Nitro-general@rubyforge.org</a>
<a class="moz-txt-link-freetext" href="http://rubyforge.org/mailman/listinfo/nitro-general">http://rubyforge.org/mailman/listinfo/nitro-general</a>
</pre>
</blockquote>
<pre wrap=""><!---->
</pre>
</blockquote>
<br>
<br>
<pre class="moz-signature" cols="72">--
Arne Brasseur
<a class="moz-txt-link-freetext" href="http://www.arnebrasseur.net">http://www.arnebrasseur.net</a>
<a class="moz-txt-link-freetext" href="http://www.zhongwiki.com">http://www.zhongwiki.com</a>
<a class="moz-txt-link-freetext" href="http://www.bankske.org">http://www.bankske.org</a>
<a class="moz-txt-link-abbreviated" href="mailto:arne@arnebrasseur.net">arne@arnebrasseur.net</a>
</pre>
</body>
</html>