File manager - Edit - /home/newsbmcs.com/public_html/static/img/logo/fcgi-bin.tar
Back
lsnode.js 0000644 00000005716 15027527173 0006410 0 ustar 00 /* * Copyright 2002-2018 Lite Speed Technologies Inc, All Rights Reserved. * LITE SPEED PROPRIETARY/CONFIDENTIAL. */ var EventEmitter = require('events').EventEmitter; var os = require('os'); var fs = require('fs'); var http = require('http'); var util = require('util'); var net = require('net'); var socketObject = { fd: 0 }; module.isApplicationLoader = true; global.LsNode = new EventEmitter(); startApplication(); function startApplication() { var appRoot = process.env.LSNODE_ROOT || process.cwd(); var startupFile = process.env.LSNODE_STARTUP_FILE || 'app.js'; LsNode.listenDone = false; if (process.env.LSNODE_ROOT != undefined) { try { process.chdir(process.env.LSNODE_ROOT); } catch (err) { console.error("Error setting directory to: " + process.env.LSNODE_ROOT + ": " + err); } } if (!startupFile.startsWith('/')) { startupFile = appRoot + '/' + startupFile; } process.title = 'lsnode:' + appRoot; var consoleLog = process.env.LSNODE_CONSOLE_LOG || '/dev/null'; fs.closeSync(1); try { fs.openSync(consoleLog, "w+"); } catch(e) { fs.openSync('/dev/null', "w+"); } http.Server.prototype.realListen = http.Server.prototype.listen; http.Server.prototype.listen = customListen; http.Server.prototype.address = lsnode_address; var app = require(startupFile); if (!LsNode.listenDone) { if (typeof app.listen === "function") app.listen(3000); } } function lsnode_address() { return process.env.LSNODE_SOCKET; } function customListen(port) { function onListenError(error) { server.emit('error', error); } // The replacement for the listen call! var server = this; if (LsNode.listenDone) { throw new Error("http.Server.listen() was called more than once " + "which is not allowed."); } LsNode.listenDone = true; var listeners = server.listeners('request'); var i; server.removeAllListeners('request'); server.on('request', function(req) { req.connection.__defineGetter__('remoteAddress', function() { return '127.0.0.1'; }); req.connection.__defineGetter__('remotePort', function() { return port; }); req.connection.__defineGetter__('addressType', function() { return 4; }); }); for (i = 0; i < listeners.length; i++) { server.on('request', listeners[i]); } var callback; if (arguments.length > 1 && typeof(arguments[arguments.length - 1]) == 'function') { callback = arguments[arguments.length - 1]; } server.once('error', onListenError); server.realListen(socketObject, function() { server.removeListener('error', onListenError); if (callback) { server.once('listening', callback); } server.emit('listening'); }); return server; } RackRunner.rb 0000755 00000010553 15027527173 0007163 0 ustar 00 #!/usr/bin/ruby ENV['RACK_ROOT']=ENV['RAILS_ROOT'] if ENV['RACK_ROOT'] == nil ENV['RACK_ENV']=ENV['RAILS_ENV'] if ENV['RACK_ENV'] == nil $0="RACK: #{ENV['APP_NAME'] || ENV['RACK_ROOT']} (#{ENV['RACK_ENV']})" if GC.respond_to?(:copy_on_write_friendly=) GC.copy_on_write_friendly = true end Dir.chdir( ENV['RACK_ROOT'] ) app_root=ENV['RACK_ROOT'] require 'rubygems' if !defined?(::Gem) require 'lsapi' if File.exist?('Gemfile') if Kernel.respond_to?(:gem, true) gem('bundler') end require ('bundler/setup' || 'bundler') end module Rack module Handler class LiteSpeed def self.run(app, options=nil) if LSAPI.respond_to?("accept_new_connection") while LSAPI.accept_new_connection != nil fork do LSAPI.postfork_child while LSAPI.accept != nil serve app end end LSAPI.postfork_parent end else while LSAPI.accept != nil serve app end end end def self.serve(app) env = ENV.to_hash env.delete "HTTP_CONTENT_LENGTH" env["SCRIPT_NAME"] = "" if env["SCRIPT_NAME"] == "/" #rack_input = StringIO.new($stdin.read.to_s) rack_input = $stdin rack_input.set_encoding(Encoding::BINARY) if rack_input.respond_to?(:set_encoding) env.update( "rack.version" => [1,0], "rack.input" => rack_input, "rack.errors" => $stderr, "rack.multithread" => false, "rack.multiprocess" => true, "rack.run_once" => false, "rack.url_scheme" => ["yes", "on", "1"].include?(ENV["HTTPS"]) ? "https" : "http" ) env["QUERY_STRING"] ||= "" env["HTTP_VERSION"] ||= env["SERVER_PROTOCOL"] env["REQUEST_PATH"] ||= "/" status, headers, body = app.call(env) begin if body.respond_to?(:to_path) and env["RACK_NO_XSENDFILE"] != "1" headers['X-LiteSpeed-Location'] = body.to_path headers.delete('Content-Length') #Correct? send_headers status, headers else send_headers status, headers send_body body end ensure body.close if body.respond_to? :close end end def self.send_headers(status, headers) print "Status: #{status}\r\n" headers.each { |k, vs| vs.split("\n").each { |v| print "#{k}: #{v}\r\n" } } print "\r\n" STDOUT.flush end def self.send_body(body) body.each { |part| print part STDOUT.flush } end end end end if Kernel.respond_to?(:gem, true) gem('rack') end require 'rack' # options = { :environment => (ENV['RACK_ENV'] || "development").dup, :config => "#{app_root}/config.ru", :detach => false, :debugger => false } server = Rack::Handler::LiteSpeed if File.exist?(options[:config]) config = options[:config] cfgfile = File.read(config) app = eval("Rack::Builder.new {( " + cfgfile + "\n )}.to_app", TOPLEVEL_BINDING, config) else require './config/environment' inner_app = ActionController::Dispatcher.new app = Rack::Builder.new { use Rails::Rack::Debugger if options[:debugger] run inner_app }.to_app end if defined?(ActiveRecord::Base) if defined?(ActiveRecord::Base.connection_pool.release_connection) ActiveRecord::Base.connection_pool.release_connection else ActiveRecord::Base.clear_active_connections! end end begin server.run(app, options.merge(:AccessLog => [])) ensure puts 'Exiting' end lsphp5 0000755 00022703500 15027527173 0005727 0 ustar 00 ELF >