Module PhusionPassenger
In: lib/phusion_passenger.rb
lib/phusion_passenger/message_client.rb
lib/phusion_passenger/message_channel.rb
lib/phusion_passenger/analytics_logger.rb
lib/phusion_passenger/rack/thread_handler_extension.rb
lib/phusion_passenger/rack/out_of_band_gc.rb
lib/phusion_passenger/console_text_template.rb
lib/phusion_passenger/debug_logging.rb
lib/phusion_passenger/preloader_shared_helpers.rb
lib/phusion_passenger/packaging.rb
lib/phusion_passenger/constants.rb
lib/phusion_passenger/standalone/stop_command.rb
lib/phusion_passenger/standalone/runtime_installer.rb
lib/phusion_passenger/standalone/runtime_locator.rb
lib/phusion_passenger/standalone/help_command.rb
lib/phusion_passenger/standalone/start_command.rb
lib/phusion_passenger/standalone/utils.rb
lib/phusion_passenger/standalone/status_command.rb
lib/phusion_passenger/standalone/config_file.rb
lib/phusion_passenger/standalone/package_runtime_command.rb
lib/phusion_passenger/standalone/command.rb
lib/phusion_passenger/standalone/app_finder.rb
lib/phusion_passenger/standalone/main.rb
lib/phusion_passenger/standalone/version_command.rb
lib/phusion_passenger/platform_info/linux.rb
lib/phusion_passenger/platform_info/apache.rb
lib/phusion_passenger/platform_info/apache_detector.rb
lib/phusion_passenger/platform_info/binary_compatibility.rb
lib/phusion_passenger/platform_info/depcheck.rb
lib/phusion_passenger/platform_info/cxx_portability.rb
lib/phusion_passenger/platform_info/compiler.rb
lib/phusion_passenger/platform_info/curl.rb
lib/phusion_passenger/platform_info/ruby.rb
lib/phusion_passenger/platform_info/zlib.rb
lib/phusion_passenger/platform_info/operating_system.rb
lib/phusion_passenger/native_support.rb
lib/phusion_passenger/request_handler/thread_handler.rb
lib/phusion_passenger/admin_tools.rb
lib/phusion_passenger/public_api.rb
lib/phusion_passenger/utils/unseekable_socket.rb
lib/phusion_passenger/utils/hosts_file_parser.rb
lib/phusion_passenger/utils/tmpdir.rb
lib/phusion_passenger/utils/ansi_colors.rb
lib/phusion_passenger/utils/file_system_watcher.rb
lib/phusion_passenger/utils/json.rb
lib/phusion_passenger/utils/tee_input.rb
lib/phusion_passenger/utils/tmpio.rb
lib/phusion_passenger/classic_rails/thread_handler_extension.rb
lib/phusion_passenger/classic_rails/cgi_fixed.rb
lib/phusion_passenger/request_handler.rb
lib/phusion_passenger/active_support3_extensions/init.rb
lib/phusion_passenger/utils.rb
lib/phusion_passenger/loader_shared_helpers.rb
lib/phusion_passenger/abstract_installer.rb
lib/phusion_passenger/platform_info.rb
lib/phusion_passenger/admin_tools/server_instance.rb
lib/phusion_passenger/admin_tools/memory_stats.rb
lib/phusion_passenger/plugin.rb

IMPORTANT: do not directly or indirectly require native_support; we can‘t compile it yet until we have a compiler, and installers usually check whether a compiler is installed.

Methods

Classes and Modules

Module PhusionPassenger::ActiveSupport3Extensions
Module PhusionPassenger::AdminTools
Module PhusionPassenger::ClassicRails
Module PhusionPassenger::DebugLogging
Module PhusionPassenger::LoaderSharedHelpers
Module PhusionPassenger::Packaging
Module PhusionPassenger::PlatformInfo
Module PhusionPassenger::PreloaderSharedHelpers
Module PhusionPassenger::Rack
Module PhusionPassenger::SharedConstants
Module PhusionPassenger::Standalone
Module PhusionPassenger::Utils
Class PhusionPassenger::AbstractInstaller
Class PhusionPassenger::AnalyticsLogger
Class PhusionPassenger::ConsoleTextTemplate
Class PhusionPassenger::MessageChannel
Class PhusionPassenger::MessageClient
Class PhusionPassenger::NativeSupportLoader
Class PhusionPassenger::Plugin
Class PhusionPassenger::RequestHandler

Constants

FILE_LOCATION = File.expand_path(__FILE__)
PACKAGE_NAME = 'passenger'   Names and version numbers ######
VERSION_STRING = '4.0.25'   Run ‘rake ext/common/Constants.h’ after changing this number.
PREFERRED_NGINX_VERSION = '1.4.4'
NGINX_SHA256_CHECKSUM = '7c989a58e5408c9593da0bebcd0e4ffc3d892d1316ba5042ddb0be5b0b4102b9'
PREFERRED_PCRE_VERSION = '8.32'
PCRE_SHA256_CHECKSUM = 'd5d8634b36baf3d08be442a627001099583b397f456bc795304a013383b6423a'
STANDALONE_INTERFACE_VERSION = 1
GLOBAL_NAMESPACE_DIRNAME = "passenger"   Directories ######
USER_NAMESPACE_DIRNAME = ".passenger"   Subdirectory under $HOME to use for storing stuff.
PLUGIN_DIRS = [ "/usr/share/#{GLOBAL_NAMESPACE_DIRNAME}/plugins", "/usr/local/share/#{GLOBAL_NAMESPACE_DIRNAME}/plugins", "~/#{USER_NAMESPACE_DIRNAME}/plugins"   Directories in which to look for plugins.
REQUIRED_LOCATIONS_INI_FIELDS = [ :bin_dir, :agents_dir, :lib_dir, :helper_scripts_dir, :resources_dir, :include_dir, :doc_dir, :ruby_libdir, :node_libdir, :apache2_module_path, :ruby_extension_source_dir, :nginx_module_source_dir
OPTIONAL_LOCATIONS_INI_FIELDS = [ # Directory in which downloaded Phusion Passenger binaries are stored. # Only available when originally packaged. :download_cache_dir
BINARIES_URL_ROOT = "https://oss-binaries.phusionpassenger.com/binaries/passenger/by_release"   Other resource locations ######
INDEX_DOC_NAME = "Users guide.html"
APACHE2_DOC_NAME = "Users guide Apache.html"
NGINX_DOC_NAME = "Users guide Nginx.html"
STANDALONE_DOC_NAME = "Users guide Standalone.html"
PASSENGER_ANALYTICS_WEB_LOG = "PASSENGER_ANALYTICS_WEB_LOG".freeze
PASSENGER_TXN_ID = "PASSENGER_TXN_ID".freeze
PASSENGER_UNION_STATION_KEY = "UNION_STATION_KEY".freeze
RACK_HIJACK_IO = "rack.hijack_io".freeze

Public Class methods

Whether the current Phusion Passenger installation is installed from a release package, e.g. an official gem or official tarball. Retruns false if e.g. the gem was built by the user, or if this install is from a git repository.

Follows the logic of ext/common/ResourceLocator.h, so don‘t forget to modify that too.

Returns whether this Phusion Passenger installation is in the ‘originally packaged’ configuration (as opposed to the ‘natively packaged’ configuration.

When originally packaged, returns the source root. When natively packaged, returns the location of the location configuration file.

[Validate]