[Nitro] Nitro on Apache

Arne Brasseur arne at arnebrasseur.net
Fri Oct 19 01:03:41 EDT 2007


Patience, I'm almost done with this.

(ab)

Robert Mela schreef:
> 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
>
>>
>> Arne Brasseur wrote:
>>> 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)
>>
>> _______________________________________________
>> Nitro-general mailing list
>> Nitro-general at rubyforge.org
>> http://rubyforge.org/mailman/listinfo/nitro-general
>
> _______________________________________________
> Nitro-general mailing list
> Nitro-general at rubyforge.org
> http://rubyforge.org/mailman/listinfo/nitro-general


-- 
Arne Brasseur
http://www.arnebrasseur.net
http://www.zhongwiki.com
http://www.bankske.org
arne at arnebrasseur.net



More information about the Nitro-general mailing list