passenger 5.0.5 → 5.0.6

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of passenger might be problematic. Click here for more details.

Files changed (36) hide show
  1. checksums.yaml +8 -8
  2. checksums.yaml.gz.asc +7 -7
  3. data.tar.gz.asc +7 -7
  4. data/CHANGELOG +17 -0
  5. data/build/test_basics.rb +2 -2
  6. data/doc/Users guide Apache.html +47 -42
  7. data/doc/Users guide Apache.idmap.txt +23 -21
  8. data/doc/Users guide Nginx.html +47 -42
  9. data/doc/Users guide Nginx.idmap.txt +23 -21
  10. data/doc/Users guide Standalone.html +39 -34
  11. data/doc/Users guide Standalone.idmap.txt +19 -17
  12. data/doc/users_guide_snippets/installation.txt +5 -0
  13. data/ext/apache2/Configuration.hpp +0 -12
  14. data/ext/apache2/Hooks.cpp +31 -35
  15. data/ext/common/AgentsStarter.h +24 -19
  16. data/ext/common/BackgroundEventLoop.cpp +1 -0
  17. data/ext/common/Constants.h +1 -1
  18. data/ext/common/MemoryKit/mbuf.cpp +4 -0
  19. data/ext/common/ResourceLocator.h +1 -1
  20. data/ext/common/ServerKit/Context.h +20 -0
  21. data/ext/common/ServerKit/HeaderTable.h +12 -4
  22. data/ext/common/ServerKit/HttpHeaderParser.h +2 -2
  23. data/ext/common/agents/HelperAgent/RequestHandler.h +2 -0
  24. data/ext/common/agents/HelperAgent/RequestHandler/BufferBody.cpp +4 -2
  25. data/ext/common/agents/HelperAgent/RequestHandler/Client.h +3 -1
  26. data/ext/common/agents/HelperAgent/RequestHandler/ForwardResponse.cpp +7 -0
  27. data/ext/common/agents/HelperAgent/RequestHandler/Hooks.cpp +5 -0
  28. data/ext/common/agents/HelperAgent/RequestHandler/SendRequest.cpp +34 -1
  29. data/ext/common/agents/HelperAgent/ResponseCache.h +14 -2
  30. data/ext/common/agents/Watchdog/HelperAgentWatcher.cpp +2 -2
  31. data/lib/phusion_passenger.rb +1 -1
  32. data/lib/phusion_passenger/config/admin_command_command.rb +52 -12
  33. data/lib/phusion_passenger/config/utils.rb +1 -1
  34. data/lib/phusion_passenger/standalone/start_command.rb +8 -3
  35. metadata +2 -2
  36. metadata.gz.asc +7 -7
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NzFhZjIxODFjNjEyZjdlNTkwYjllYTgxNjk0NjIzMTAzZjhkMGFkMw==
4
+ ZTMzY2I0N2RkY2E0MjZlYzk2NjViZWIyMzA1ZmQ0OTM1MTU1ZGRhMg==
5
5
  data.tar.gz: !binary |-
6
- YWRhYjgyYWEyNzIyMzA2ZTZiNGYzMDNjZWI4ZDM1ZGNiYWM2YTEyZQ==
6
+ YjBkMzFiNmJkMjQ4NzJhM2EzZjMyZjM1YWYwOTVmYjA0ODkyZTI5YQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- YzVkYjlmNGQyMzc0MzdlZjQyMmIzYzNhNDE2ZDVlYjFlNjAzNWQ5NTJlNGRm
10
- YTBjZDRjMGFmMDAzNTNlZGJhNjAwODI3OWVjNDgyM2Y1MjI2ODc2NTNhYzZl
11
- MmQwNTM2M2NhYzIzODU4ZDQwMTc0YjgwOGE2ZmNmMmVkNDFhYjU=
9
+ ZTI4MGU1MjdhMzFmNDI5YzYwODc3ODI5Mjc5OTBiMGI5OTQ0N2FkOTExMTc2
10
+ MDI1ZDZiMzNkNDc3Yzk3OTM3ZDE2OThjOTQ4OTE1OWRlM2UwYzUxMjE3MDlk
11
+ ZjRkYzcwOTE3N2ZjZWNmZTk5NGNjYzQ4MTI3NjA5N2I0MmUyNjY=
12
12
  data.tar.gz: !binary |-
13
- MDU1MzkxOTU1ZWEyNzFiZTU3OTdiZGY3NDU0MWEyMDRkNzVlOTM3YzdiY2Ez
14
- MTc0ZjhhMDRhYWM3Zjk2NmViMjVkOGQ5OTBlNTdmZWEzN2RlNTZiYmY0OTkx
15
- ZDc1OGJlMzQxODhkMDBmZDkyOWU0ODdhNTczNWEwMzA3MzM3OTk=
13
+ YTQwODBlYjJiMzM1ZGZiYzRlNGIwZDcyNTBlYmRmMzg5NDNiN2JiM2U0NGE0
14
+ ZmQ5ODlmMzQyYThjNjczZjRmNzkxMDA2ZTZjM2Q2ZmVmNzZmNjZiOWYwNjNk
15
+ M2FjMDA1Zjk4YmM1ZTU1N2VkM2I2ODIyNTBlYjI0Zjk0ODI4ZmE=
@@ -2,11 +2,11 @@
2
2
  Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
3
3
  Comment: GPGTools - http://gpgtools.org
4
4
 
5
- iQEcBAABAgAGBQJVETeoAAoJECrHRaUKISqMINgH/icpoSgLhQhurZC5QgKuo/YJ
6
- tDIylDa5nkw1HHuA1W4NPdvOKTpalRwwAZyHZU9O9CIoI29ss0Th6mkEp90/wM6U
7
- VL/rnU1+Vc9I60myPCJ8RUnQZAU5PB712/ePnqyx+ooIKZ9K53ludC5uzBDmK3wW
8
- usNC0qw/W5IATogPaGqRjVYA9hbeTZdaekolqhyeyEbrO7QAoOFqeDBGjNsH+Vkk
9
- IUBBg/D2w9yo9I+wwOgj/w/F9kJpEHnAQv1KWWcoHhFN0In/8JyjwWacksASrh63
10
- MGTVw0Z9++tjC5w7+1yt0KxaTHaB/ZdtEdBX4RECDZbJ534BP/8jJyMF0uXxKFY=
11
- =Gu+t
5
+ iQEcBAABAgAGBQJVGmsTAAoJECrHRaUKISqMWU4IAJ1i9nlQrPUlu6bOF8uOfMe1
6
+ 0GNRr2q37ZeB5lzeqUxFb/qD3IoUast1H7tGaO6/7uFkgDIBLM9eCDfXtaT2oR52
7
+ +zSYQQ6uICIuzw5hGLKQyA+za20NRspYhgOal1Seh9Urn4uRXDiuwwcAaaH2BuCg
8
+ NorUslin3YoWxmDO/fEHPmoNe5YqgzxZvWGZBDebfhuHMi7YYKlaPESqLvGWNfSR
9
+ rr6ygaqpWNU5FFbibVy6+fNkbBIH8tYow7RURBaQ1VPnwu51Fb+AiLumQsi1RJ5i
10
+ 6tHTNyqrRd9+DOQZctYGIt+RPGWN1XfQ2o8Ydp22qyVed45yhz8bYGrDxV/JevE=
11
+ =my8R
12
12
  -----END PGP SIGNATURE-----
data.tar.gz.asc CHANGED
@@ -2,11 +2,11 @@
2
2
  Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
3
3
  Comment: GPGTools - http://gpgtools.org
4
4
 
5
- iQEcBAABAgAGBQJVETeoAAoJECrHRaUKISqMKVEIALBq6o8FeKNDeMk77Fr0j4RJ
6
- mkM2maA/GgrxWNtVnAmbIKznk/2f097Iu94YbVEIkqtTd7SYvWbEEP+5vYCkAyB7
7
- /jU14bg3tw97gKRABDbQikeRveTWgFHlctL8z+bgo27HL2fpfaE4HHq9aFfUWKce
8
- 30nD63Vr/2S9NfpJSUFM40FOR+TRX4FKdvOgeZf6A6vBWHjSgrX9UqND89s/ryfu
9
- gT+vNPk9h3xCloIfXEOambGR8WyjdoIQ8ecSHVWfTsC8O35kJ9ehdBfLWsp40PTV
10
- jbBVGn0SOjMBZZwDXAyQLruf1gtVLKVkgoFQDjFlBNmatZCyi/ocPbv19YTEVtE=
11
- =Gc47
5
+ iQEcBAABAgAGBQJVGmsTAAoJECrHRaUKISqMgCMIAICYJu67lJmPueuE4lvXNTPc
6
+ xHKXjRfCpNyzINRWBkdu2G/hz6QGUcZsZwBchcstmFanh0YESg9c3NM67SVdMO4v
7
+ U+s3S6uPW3UbkrWp57y0zqldnoqlGJu4f9NqO30MIQtGJlaEJQq6T7ndkK+dJbqc
8
+ lOQZZWrenr7DiRDR1XjUnHKvM1rY9Lop8X+tikIoQh804TUUqe5h71BAQUu2YzS6
9
+ KfPRDEPU4m6jmC1Ook72dLV9HZs8iXvOQLhV8zWmAlkPg/lF8FEx5tmLzUuNkQMl
10
+ WXVNlqujpGw/BpaI64NJrbAsDrU+JCaS1CBgYV2P8J46Ba4O/VU1buaL+SeBwaE=
11
+ =qiL8
12
12
  -----END PGP SIGNATURE-----
data/CHANGELOG CHANGED
@@ -1,3 +1,20 @@
1
+ Release 5.0.6
2
+ -------------
3
+
4
+ * The turbocache no longer caches responses for which the Cache-Control header contains "no-cache". Please note that "no-cache" does not mean "do not cache this response". Instead, it means "any caching servers may only serve the cached response after validating it". Since the turbocache does not support validation, we've chosen to skip caching instead.
5
+
6
+ Coincidentally, this change "fixes" problems with applications that erroneously use "no-cache" as a flag for "do not cache this response". What these applications should actually use is "no-store". We recommend the developers of such applications to change their caching headers in this manner, because even if Passenger doesn't unintentionally cache the response, any intermediate proxies that visitors are behind may still cache the response.
7
+ * Fixes a number of memory leaks. Memory was leaked upon processing a request with multiple headers, upon processing a response with multiple headers, and upon processing a response with Set-Cookie headers. Every time such a request or response was processed, 512 bytes of memory was leaked due to improperly dereferencing relevant memory buffers. Closes GH-1455.
8
+ * Fixes various bugs related to Union Station data collection.
9
+
10
+ Union Station is our upcoming application analytics and performance monitoring SaaS platform. It is opt-in: no data is collected unless you turn the feature on.
11
+ * Fixes a Union Station-related file descriptor leak. Closes GH-1439.
12
+ * Fixes some bugs w.r.t. use of uninitialized memory.
13
+ * More informative error message if a support binary is not found, including a resolution hint. Closes GH-1395.
14
+ * [Apache] `SetEnv` variables are now passed as Rack/CGI/request variables. This was also the case in Passenger 4, but not in Passenger 5.0.0-5.0.5. We've restored the old behavior because the behavior in 5.0.0-5.0.5 breaks certain Apache modules such as Shibboleth. Closes GH-1446.
15
+ * [Standalone] PID and log files now correctly created if user specifies relative path.
16
+
17
+
1
18
  Release 5.0.5
2
19
  -------------
3
20
 
@@ -1,5 +1,5 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2014 Phusion
2
+ # Copyright (c) 2010-2015 Phusion
3
3
  #
4
4
  # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
5
5
  #
@@ -51,7 +51,7 @@ task 'test:install_deps' do
51
51
  install_doctools = boolean_option('DOCTOOLS', default)
52
52
 
53
53
  if deps_target = string_option('DEPS_TARGET')
54
- bundle_args = " --path #{deps_target}"
54
+ bundle_args = "--path #{deps_target} #{ENV['BUNDLE_ARGS']}".strip
55
55
  end
56
56
 
57
57
  if !PlatformInfo.locate_ruby_tool('bundle')
@@ -1114,27 +1114,28 @@ using the command line.</p></div>
1114
1114
  <div class="foo toclevel4"><a href="#install_add_apt_repo">2.3.1. Adding our APT repository</a></div>
1115
1115
  <div class="foo toclevel4"><a href="#_installing_packages">2.3.2. Installing packages</a></div>
1116
1116
  <div class="foo toclevel3"><a href="#_installing_or_upgrading_on_red_hat_fedora_centos_or_scientificlinux">2.4. Installing or upgrading on Red Hat, Fedora, CentOS or ScientificLinux</a></div>
1117
- <div class="foo toclevel3"><a href="#rubygems_generic_install">2.5. Generic installation, upgrade and downgrade method: via RubyGems</a></div>
1118
- <div class="foo toclevel3"><a href="#tarball_generic_install">2.6. Generic installation, upgrade and downgrade method: via tarball</a></div>
1119
- <div class="foo toclevel3"><a href="#_upgrading_from_open_source_to_enterprise">2.7. Upgrading from open source to Enterprise</a></div>
1120
- <div class="foo toclevel3"><a href="#_cryptographic_verification_of_installation_files">2.8. Cryptographic verification of installation files</a></div>
1121
- <div class="foo toclevel4"><a href="#_synopsis_2">2.8.1. Synopsis</a></div>
1122
- <div class="foo toclevel4"><a href="#_importing_the_phusion_software_signing_key">2.8.2. Importing the Phusion Software Signing key</a></div>
1123
- <div class="foo toclevel4"><a href="#_verifying_the_phusion_software_signing_key">2.8.3. Verifying the Phusion Software Signing key</a></div>
1124
- <div class="foo toclevel4"><a href="#_verifying_the_gem_and_tarball">2.8.4. Verifying the gem and tarball</a></div>
1125
- <div class="foo toclevel4"><a href="#_verifying_git_signatures">2.8.5. Verifying Git signatures</a></div>
1126
- <div class="foo toclevel4"><a href="#_verifying_deb_and_rpm_packages">2.8.6. Verifying DEB and RPM packages</a></div>
1127
- <div class="foo toclevel4"><a href="#_revocation">2.8.7. Revocation</a></div>
1128
- <div class="foo toclevel3"><a href="#_non_interactive_automatic_headless_installs_or_upgrades">2.9. Non-interactive, automatic, headless installs or upgrades</a></div>
1129
- <div class="foo toclevel3"><a href="#_customizing_the_compilation_process">2.10. Customizing the compilation process</a></div>
1130
- <div class="foo toclevel4"><a href="#_setting_the_compiler">2.10.1. Setting the compiler</a></div>
1131
- <div class="foo toclevel4"><a href="#_adding_additional_compiler_or_linker_flags">2.10.2. Adding additional compiler or linker flags</a></div>
1132
- <div class="foo toclevel4"><a href="#forcing_location_of_command_line_tools_and_dependencies">2.10.3. Forcing location of command line tools and dependencies</a></div>
1133
- <div class="foo toclevel3"><a href="#multiple_apache_installs">2.11. Dealing with multiple Apache installations</a></div>
1134
- <div class="foo toclevel3"><a href="#working_with_apache_conf">2.12. Working with the Apache configuration file</a></div>
1135
- <div class="foo toclevel3"><a href="#_disabling_without_uninstalling">2.13. Disabling without uninstalling</a></div>
1136
- <div class="foo toclevel3"><a href="#uninstalling">2.14. Uninstalling</a></div>
1137
- <div class="foo toclevel3"><a href="#moving_phusion_passenger">2.15. Moving to a different directory</a></div>
1117
+ <div class="foo toclevel3"><a href="#_installing_or_upgrading_on_heroku">2.5. Installing or upgrading on Heroku</a></div>
1118
+ <div class="foo toclevel3"><a href="#rubygems_generic_install">2.6. Generic installation, upgrade and downgrade method: via RubyGems</a></div>
1119
+ <div class="foo toclevel3"><a href="#tarball_generic_install">2.7. Generic installation, upgrade and downgrade method: via tarball</a></div>
1120
+ <div class="foo toclevel3"><a href="#_upgrading_from_open_source_to_enterprise">2.8. Upgrading from open source to Enterprise</a></div>
1121
+ <div class="foo toclevel3"><a href="#_cryptographic_verification_of_installation_files">2.9. Cryptographic verification of installation files</a></div>
1122
+ <div class="foo toclevel4"><a href="#_synopsis_2">2.9.1. Synopsis</a></div>
1123
+ <div class="foo toclevel4"><a href="#_importing_the_phusion_software_signing_key">2.9.2. Importing the Phusion Software Signing key</a></div>
1124
+ <div class="foo toclevel4"><a href="#_verifying_the_phusion_software_signing_key">2.9.3. Verifying the Phusion Software Signing key</a></div>
1125
+ <div class="foo toclevel4"><a href="#_verifying_the_gem_and_tarball">2.9.4. Verifying the gem and tarball</a></div>
1126
+ <div class="foo toclevel4"><a href="#_verifying_git_signatures">2.9.5. Verifying Git signatures</a></div>
1127
+ <div class="foo toclevel4"><a href="#_verifying_deb_and_rpm_packages">2.9.6. Verifying DEB and RPM packages</a></div>
1128
+ <div class="foo toclevel4"><a href="#_revocation">2.9.7. Revocation</a></div>
1129
+ <div class="foo toclevel3"><a href="#_non_interactive_automatic_headless_installs_or_upgrades">2.10. Non-interactive, automatic, headless installs or upgrades</a></div>
1130
+ <div class="foo toclevel3"><a href="#_customizing_the_compilation_process">2.11. Customizing the compilation process</a></div>
1131
+ <div class="foo toclevel4"><a href="#_setting_the_compiler">2.11.1. Setting the compiler</a></div>
1132
+ <div class="foo toclevel4"><a href="#_adding_additional_compiler_or_linker_flags">2.11.2. Adding additional compiler or linker flags</a></div>
1133
+ <div class="foo toclevel4"><a href="#forcing_location_of_command_line_tools_and_dependencies">2.11.3. Forcing location of command line tools and dependencies</a></div>
1134
+ <div class="foo toclevel3"><a href="#multiple_apache_installs">2.12. Dealing with multiple Apache installations</a></div>
1135
+ <div class="foo toclevel3"><a href="#working_with_apache_conf">2.13. Working with the Apache configuration file</a></div>
1136
+ <div class="foo toclevel3"><a href="#_disabling_without_uninstalling">2.14. Disabling without uninstalling</a></div>
1137
+ <div class="foo toclevel3"><a href="#uninstalling">2.15. Uninstalling</a></div>
1138
+ <div class="foo toclevel3"><a href="#moving_phusion_passenger">2.16. Moving to a different directory</a></div>
1138
1139
  <div class="foo toclevel2"><a href="#_deploying_a_rack_based_ruby_application">3. Deploying a Rack-based Ruby application</a></div>
1139
1140
  <div class="foo toclevel3"><a href="#_tutorial_example_writing_and_deploying_a_hello_world_rack_application">3.1. Tutorial/example: writing and deploying a Hello World Rack application</a></div>
1140
1141
  <div class="foo toclevel3"><a href="#_deploying_to_a_virtual_host_8217_s_root">3.2. Deploying to a virtual host’s root</a></div>
@@ -1792,7 +1793,11 @@ sudo apache2ctl stop; sudo apache2ctl start</pre>
1792
1793
  <div class="paragraph"><p>There are instructions for building your own packages and Yum repositories in the <a href="https://github.com/phusion/passenger/tree/master/rpm#readme">rpm directory ReadMe</a> within the <a href="https://github.com/phusion/passenger">GitHub repository</a>.</p></div>
1793
1794
  </div>
1794
1795
  <div class="sect2">
1795
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="rubygems_generic_install"></span><h3 data-comment-topic="installing-via-the-gem-39jw1u" data-anchor="rubygems_generic_install">2.5. Generic installation, upgrade and downgrade method: via RubyGems</h3>
1796
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_installing_or_upgrading_on_heroku"></span><h3 data-comment-topic="installing-or-upgrading-on-heroku-o0o2mk" data-anchor="_installing_or_upgrading_on_heroku">2.5. Installing or upgrading on Heroku</h3>
1797
+ <div class="paragraph"><p>Please refer to our <a href="https://github.com/phusion/passenger-ruby-heroku-demo#readme">Heroku Ruby demo</a> for installation and upgrade instructions for Heroku.</p></div>
1798
+ </div>
1799
+ <div class="sect2">
1800
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="rubygems_generic_install"></span><h3 data-comment-topic="installing-via-the-gem-39jw1u" data-anchor="rubygems_generic_install">2.6. Generic installation, upgrade and downgrade method: via RubyGems</h3>
1796
1801
  <div class="paragraph"><p>RubyGems is only used as a method to obtain the Phusion Passenger files, so in case you have multiple Ruby versions it does not matter which Ruby’s RubyGems you use for installation. Once installed, Phusion Passenger can work with all other Ruby versions on your system. This is explained in <a href="#relationship_with_ruby">Phusion Passenger and its relationship with Ruby</a>.</p></div>
1797
1802
  <span class="anchor_helper" id="is_ruby_home_or_system_wide_installed"></span><h4 class="float" data-anchor="is_ruby_home_or_system_wide_installed">Step 1: figuring out whether your Ruby is installed in the home directory or system-wide</h4>
1798
1803
  <div class="paragraph"><p>Ruby may either be installed in the home directory, or system-wide. If it’s installed system-wide then we will want to install gems system-wide as well, so you need to switch to a root prompt first. If Ruby is installed in the home directory then we will want to install gems to the home directory as well, as a normal user.</p></div>
@@ -1946,7 +1951,7 @@ kill PID_OF_FLYING_PASSENGER</pre>
1946
1951
  <div class="paragraph"><p>If the output is not as expected, then please refer to the <a href="#troubleshooting">Troubleshooting</a> section.</p></div>
1947
1952
  </div>
1948
1953
  <div class="sect2">
1949
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="tarball_generic_install"></span><h3 data-comment-topic="installing-via-the-source-tarball-1cgxrqc" data-anchor="tarball_generic_install">2.6. Generic installation, upgrade and downgrade method: via tarball</h3>
1954
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="tarball_generic_install"></span><h3 data-comment-topic="installing-via-the-source-tarball-1cgxrqc" data-anchor="tarball_generic_install">2.7. Generic installation, upgrade and downgrade method: via tarball</h3>
1950
1955
  <span class="anchor_helper" id="_step_1_installing_ruby"></span><h4 class="float" data-anchor="_step_1_installing_ruby">Step 1: installing Ruby</h4>
1951
1956
  <div class="paragraph"><p>Phusion Passenger supports multiple languages and its core is written in C++, but its installer and administration tools are written in Ruby, so you must install Ruby.</p></div>
1952
1957
  <div class="paragraph"><p>Even though Ruby is required, Ruby will normally not be loaded during normal operation unless you deploy a Ruby web application on Phusion Passenger. Phusion Passenger’s dependency on Ruby is very minimal. See <a href="#relationship_with_ruby">Phusion Passenger and its relationship with Ruby</a> for details.</p></div>
@@ -2035,7 +2040,7 @@ configuration file. However, it doesn’t copy any files to outside the Phusion
2035
2040
  <div class="paragraph"><p>If the output is not as expected, then please refer to the <a href="#troubleshooting">Troubleshooting</a> section.</p></div>
2036
2041
  </div>
2037
2042
  <div class="sect2">
2038
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_upgrading_from_open_source_to_enterprise"></span><h3 data-comment-topic="upgrading-from-open-source-to-enterprise-b17h8g" data-anchor="_upgrading_from_open_source_to_enterprise">2.7. Upgrading from open source to Enterprise</h3>
2043
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_upgrading_from_open_source_to_enterprise"></span><h3 data-comment-topic="upgrading-from-open-source-to-enterprise-b17h8g" data-anchor="_upgrading_from_open_source_to_enterprise">2.8. Upgrading from open source to Enterprise</h3>
2039
2044
  <div class="paragraph"><p>Phusion Passenger comes in two variants: an open source version, as well as an <a href="https://www.phusionpassenger.com/enterprise">Enterprise version</a> which introduces a myriad of useful features that can improve stability and performance and efficiency.</p></div>
2040
2045
  <div class="paragraph"><p>Customers who have bought Phusion Passenger Enterprise can upgrade their open source installation to Enterprise as follows:</p></div>
2041
2046
  <div class="olist arabic"><ol class="arabic">
@@ -2053,13 +2058,13 @@ Install the Enterprise version by following one of the installation guides in th
2053
2058
  <div class="paragraph"><p>The uninstallation is necessary because the Enterprise Ruby gem has a different gem name (<em>passenger-enterprise-server</em> instead of <em>passenger</em>), but the same administration command names (e.g. <span class="monospaced">passenger-status</span>). Uninstalling the open source version avoids any conflicts.</p></div>
2054
2059
  </div>
2055
2060
  <div class="sect2">
2056
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_cryptographic_verification_of_installation_files"></span><h3 data-comment-topic="cryptographic-verification-of-installation-files-ed3r9v" data-anchor="_cryptographic_verification_of_installation_files">2.8. Cryptographic verification of installation files</h3>
2061
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_cryptographic_verification_of_installation_files"></span><h3 data-comment-topic="cryptographic-verification-of-installation-files-ed3r9v" data-anchor="_cryptographic_verification_of_installation_files">2.9. Cryptographic verification of installation files</h3>
2057
2062
  <div class="sect3">
2058
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_synopsis_2"></span><h4 data-comment-topic="synopsis-uwnz2o" data-anchor="_synopsis_2">2.8.1. Synopsis</h4>
2063
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_synopsis_2"></span><h4 data-comment-topic="synopsis-uwnz2o" data-anchor="_synopsis_2">2.9.1. Synopsis</h4>
2059
2064
  <div class="paragraph"><p>We digitally sign various files with our GPG key so that you can check whether they’re legit, i.e. whether they really came from Phusion and haven’t been tampered with by a third party. We apply signing since the open source version 4.0.0 RC 4, or the Enterprise version 4.0.0 RC 1.</p></div>
2060
2065
  </div>
2061
2066
  <div class="sect3">
2062
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_importing_the_phusion_software_signing_key"></span><h4 data-comment-topic="importing-the-phusion-software-signing-key-1x0rhv" data-anchor="_importing_the_phusion_software_signing_key">2.8.2. Importing the Phusion Software Signing key</h4>
2067
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_importing_the_phusion_software_signing_key"></span><h4 data-comment-topic="importing-the-phusion-software-signing-key-1x0rhv" data-anchor="_importing_the_phusion_software_signing_key">2.9.2. Importing the Phusion Software Signing key</h4>
2063
2068
  <div class="paragraph"><p>Phusion’s GPG key for signing software is as follows:</p></div>
2064
2069
  <div class="literalblock">
2065
2070
  <div class="content monospaced">
@@ -2081,7 +2086,7 @@ gpg --keyserver keyserver.ubuntu.com --search-keys 0x2AC745A50A212A8C</pre>
2081
2086
  <div class="paragraph"><p>The email address <a href="mailto:software-signing@phusion.nl">software-signing@phusion.nl</a> redirects to <a href="mailto:info@phusion.nl">info@phusion.nl</a> so it’s safe to send email there.</p></div>
2082
2087
  </div>
2083
2088
  <div class="sect3">
2084
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_the_phusion_software_signing_key"></span><h4 data-comment-topic="verifying-the-phusion-software-signing-key-10430lg" data-anchor="_verifying_the_phusion_software_signing_key">2.8.3. Verifying the Phusion Software Signing key</h4>
2089
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_the_phusion_software_signing_key"></span><h4 data-comment-topic="verifying-the-phusion-software-signing-key-10430lg" data-anchor="_verifying_the_phusion_software_signing_key">2.9.3. Verifying the Phusion Software Signing key</h4>
2085
2090
  <div class="paragraph"><p>The Phusion Software Signing key is also <strong>signed by the Phusion founders</strong>. Their keys are as follows:</p></div>
2086
2091
  <div class="literalblock">
2087
2092
  <div class="content monospaced">
@@ -2111,7 +2116,7 @@ gpg --keyserver keyserver.ubuntu.com --search-keys 0xAE405F7869481265</pre>
2111
2116
  </div>
2112
2117
  </div>
2113
2118
  <div class="sect3">
2114
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_the_gem_and_tarball"></span><h4 data-comment-topic="verifying-the-gem-and-tarball-1nf0uov" data-anchor="_verifying_the_gem_and_tarball">2.8.4. Verifying the gem and tarball</h4>
2119
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_the_gem_and_tarball"></span><h4 data-comment-topic="verifying-the-gem-and-tarball-1nf0uov" data-anchor="_verifying_the_gem_and_tarball">2.9.4. Verifying the gem and tarball</h4>
2115
2120
  <div class="paragraph"><p>You can find the open source version’s gem and tarball GPG signatures at <a href="https://www.phusionpassenger.com/file_releases">https://www.phusionpassenger.com/file_releases</a>. The Enterprise version’s GPG signatures can be found in the <a href="https://www.phusionpassenger.com/orders">Customer Area</a>. All signatures have the <em>.asc</em> extension. Once you have imported our key, you can verify the validity of a file against its signature as follows:</p></div>
2116
2121
  <div class="listingblock">
2117
2122
  <div class="content monospaced">
@@ -2122,7 +2127,7 @@ gpg: Good signature from "Phusion Software Signing &lt;software-signing@phusion.
2122
2127
  </div>
2123
2128
  </div>
2124
2129
  <div class="sect3">
2125
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_git_signatures"></span><h4 data-comment-topic="verifying-git-signatures-oaafwd" data-anchor="_verifying_git_signatures">2.8.5. Verifying Git signatures</h4>
2130
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_git_signatures"></span><h4 data-comment-topic="verifying-git-signatures-oaafwd" data-anchor="_verifying_git_signatures">2.9.5. Verifying Git signatures</h4>
2126
2131
  <div class="paragraph"><p>Tags in the <a href="https://github.com/phusion/passenger">Git repository for the open source version</a> are also tagged. You can verify a Git tag as follows:</p></div>
2127
2132
  <div class="listingblock">
2128
2133
  <div class="content monospaced">
@@ -2139,11 +2144,11 @@ gpg: Good signature from "Phusion Software Signing &lt;software-signing@phusion.
2139
2144
  </div>
2140
2145
  </div>
2141
2146
  <div class="sect3">
2142
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_deb_and_rpm_packages"></span><h4 data-comment-topic="verifying-deb-and-rpm-packages-vgtv04" data-anchor="_verifying_deb_and_rpm_packages">2.8.6. Verifying DEB and RPM packages</h4>
2147
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_deb_and_rpm_packages"></span><h4 data-comment-topic="verifying-deb-and-rpm-packages-vgtv04" data-anchor="_verifying_deb_and_rpm_packages">2.9.6. Verifying DEB and RPM packages</h4>
2143
2148
  <div class="paragraph"><p>The DEB and RPM packages are signed with the signatures of the respective packagers. They are automatically checked upon installation.</p></div>
2144
2149
  </div>
2145
2150
  <div class="sect3">
2146
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_revocation"></span><h4 data-comment-topic="revocation-4o01n2" data-anchor="_revocation">2.8.7. Revocation</h4>
2151
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_revocation"></span><h4 data-comment-topic="revocation-4o01n2" data-anchor="_revocation">2.9.7. Revocation</h4>
2147
2152
  <div class="paragraph"><p>In the event our key is compromised, we will revoke the key and upload the revocation information to sks-servers.net and keyserver.ubuntu.com. However your system will not know about the revocation until you update the keys from the keyservers. You should update your keys regularly (e.g. once a week) by invoking:</p></div>
2148
2153
  <div class="listingblock">
2149
2154
  <div class="content monospaced">
@@ -2161,14 +2166,14 @@ gpg --refresh-keys --keyserver keyserver.ubuntu.com</pre>
2161
2166
  </div>
2162
2167
  </div>
2163
2168
  <div class="sect2">
2164
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_non_interactive_automatic_headless_installs_or_upgrades"></span><h3 data-comment-topic="non-interactive-automatic-headless-installs-or-upgrades-1arnxii" data-anchor="_non_interactive_automatic_headless_installs_or_upgrades">2.9. Non-interactive, automatic, headless installs or upgrades</h3>
2169
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_non_interactive_automatic_headless_installs_or_upgrades"></span><h3 data-comment-topic="non-interactive-automatic-headless-installs-or-upgrades-1arnxii" data-anchor="_non_interactive_automatic_headless_installs_or_upgrades">2.10. Non-interactive, automatic, headless installs or upgrades</h3>
2165
2170
  <div class="paragraph"><p>By default, the installer (<span class="monospaced">passenger-install-apache2-module</span>) is interactive. If you want to automate installation then you can do so by passing <span class="monospaced">--auto</span> to the installer. See also <span class="monospaced">passenger-install-apache2-module --help</span> for more options.</p></div>
2166
2171
  </div>
2167
2172
  <div class="sect2">
2168
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_customizing_the_compilation_process"></span><h3 data-comment-topic="customizing-the-compilation-process-1sds3od" data-anchor="_customizing_the_compilation_process">2.10. Customizing the compilation process</h3>
2173
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_customizing_the_compilation_process"></span><h3 data-comment-topic="customizing-the-compilation-process-1sds3od" data-anchor="_customizing_the_compilation_process">2.11. Customizing the compilation process</h3>
2169
2174
  <div class="paragraph"><p>The Phusion Passenger compilation process can be customized with environment variables. You can learn more about environment variables in <a href="#about_environment_variables">About environment variables</a>.</p></div>
2170
2175
  <div class="sect3">
2171
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_setting_the_compiler"></span><h4 data-comment-topic="setting-the-compiler-1symq7h" data-anchor="_setting_the_compiler">2.10.1. Setting the compiler</h4>
2176
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_setting_the_compiler"></span><h4 data-comment-topic="setting-the-compiler-1symq7h" data-anchor="_setting_the_compiler">2.11.1. Setting the compiler</h4>
2172
2177
  <div class="paragraph"><p>You can force the Phusion Passenger build system to use a specific C or C++ compiler by setting the <span class="monospaced">CC</span> and <span class="monospaced">CXX</span> environment variables. These may be set to any arbitrary shell commands.</p></div>
2173
2178
  <div class="paragraph"><p>For example, contributors who want to hack on Phusion Passenger may want to use Clang for faster compilation and <a href="http://ccache.samba.org/">ccache</a> for faster recompilation, and may want to enable more error-catching compilation flags:</p></div>
2174
2179
  <div class="listingblock">
@@ -2191,7 +2196,7 @@ http://www.gnu.org/software/src-highlite -->
2191
2196
  </div>
2192
2197
  </div>
2193
2198
  <div class="sect3">
2194
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_adding_additional_compiler_or_linker_flags"></span><h4 data-comment-topic="adding-additional-compiler-or-linker-flags-wzu0ey" data-anchor="_adding_additional_compiler_or_linker_flags">2.10.2. Adding additional compiler or linker flags</h4>
2199
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_adding_additional_compiler_or_linker_flags"></span><h4 data-comment-topic="adding-additional-compiler-or-linker-flags-wzu0ey" data-anchor="_adding_additional_compiler_or_linker_flags">2.11.2. Adding additional compiler or linker flags</h4>
2195
2200
  <div class="paragraph"><p>On some systems, C/C++ libraries and headers that Phusion Passenger requires may be located in a non-standard directory. You can force the Phusion Passenger build system to look in those locations by injecting compiler and linker flags using the following environment variables:</p></div>
2196
2201
  <div class="dlist"><dl>
2197
2202
  <dt class="hdlist1">
@@ -2293,7 +2298,7 @@ http://www.gnu.org/software/src-highlite -->
2293
2298
  </div>
2294
2299
  </div>
2295
2300
  <div class="sect3">
2296
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="forcing_location_of_command_line_tools_and_dependencies"></span><h4 data-comment-topic="forcing-location-of-certain-command-line-tools-1hym30u" data-anchor="forcing_location_of_command_line_tools_and_dependencies">2.10.3. Forcing location of command line tools and dependencies</h4>
2301
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="forcing_location_of_command_line_tools_and_dependencies"></span><h4 data-comment-topic="forcing-location-of-certain-command-line-tools-1hym30u" data-anchor="forcing_location_of_command_line_tools_and_dependencies">2.11.3. Forcing location of command line tools and dependencies</h4>
2297
2302
  <div class="paragraph"><p>The Phusion Passenger build system attempts to autodetect many things by locating relevant helper tools. For example, to find out which compiler flags it should use for compiling Apache modules, it locates the <span class="monospaced">apxs2</span> command and queries it. To find out which compiler flags it should use for libcurl, it queries the <span class="monospaced">curl-config</span> command. These commands may not be in <span class="monospaced">$PATH</span>, or even when they are you may want to use a different one.</p></div>
2298
2303
  <div class="paragraph"><p>You can force the build to find certain command line tools at certain locations by using the following environment variables:</p></div>
2299
2304
  <div class="dlist"><dl>
@@ -2375,7 +2380,7 @@ http://www.gnu.org/software/src-highlite -->
2375
2380
  </div>
2376
2381
  </div>
2377
2382
  <div class="sect2">
2378
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="multiple_apache_installs"></span><h3 data-comment-topic="dealing-with-multiple-apache-installations-ks5nkz" data-anchor="multiple_apache_installs">2.11. Dealing with multiple Apache installations</h3>
2383
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="multiple_apache_installs"></span><h3 data-comment-topic="dealing-with-multiple-apache-installations-ks5nkz" data-anchor="multiple_apache_installs">2.12. Dealing with multiple Apache installations</h3>
2379
2384
  <div class="paragraph"><p>Some systems have multiple Apache installations. Maybe you already know about that, and you installed multiple Apaches for a reason. Or maybe you did so in the past but then forgot about the other installs. Or maybe someone else — or some other software — installed another Apache for you without your knowledge.</p></div>
2380
2385
  <div class="paragraph"><p>Whatever the reason might be, it is important that you know about the existance of multiple Apache installations, and that you decide <strong>which one</strong> you want to use. <strong>Unless you know exactly what you are doing, we recommend that you remove all the Apache installations that you don’t intend to use, in order to avoid confusion and problems</strong>. You should end up with only a single Apache installation. Unfortunately, this manual cannot tell you how to remove the other Apache installs: it depends on how you originally installed them. Usually it’s a matter of removing the directories that they’re located in, and removing their configuration files. But some Apache distributions might bundle an uninstaller. You need to do the proper research on how they ended up there in the first place.</p></div>
2381
2386
  <div class="paragraph"><p>Phusion Passenger provides a tool to check whether you have multiple Apache installations on your system. You can invoke the tool by running <span class="monospaced">passenger-config --detect-apache2</span>.</p></div>
@@ -2394,7 +2399,7 @@ By setting <span class="monospaced">APXS2</span>, <span class="monospaced">HTTPD
2394
2399
  </ul></div>
2395
2400
  </div>
2396
2401
  <div class="sect2">
2397
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="working_with_apache_conf"></span><h3 data-comment-topic="locating-the-apache-configuration-file-1fterqv" data-anchor="working_with_apache_conf">2.12. Working with the Apache configuration file</h3>
2402
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="working_with_apache_conf"></span><h3 data-comment-topic="locating-the-apache-configuration-file-1fterqv" data-anchor="working_with_apache_conf">2.13. Working with the Apache configuration file</h3>
2398
2403
  <div class="paragraph"><p>On most systems the Apache configuration file is located in either <em>/etc/apache2/httpd.conf</em> or <em>/etc/apache2/apache2.conf</em>. However, to allow better organization, many operating systems and Apache distributions also read configuration files in the <em>conf.d</em>, <em>mods-enabled</em> and <em>sites-enabled</em> subdirectories.</p></div>
2399
2404
  <div class="paragraph"><p><em>mods-enabled</em> contains symlinks to files in <em>mods-available</em>. This latter subdirectory contains config files for all available modules, while <em>mods-enabled</em> contains only a subset, namely the modules that should actually be enabled. The symlinks are created using the <span class="monospaced">a2enmod</span> tool. <em><strong>.load</strong></em> files contain <span class="monospaced">LoadModule</span> directives, while <em>.conf</em> files contain all other configuration directives.</p></div>
2400
2405
  <div class="paragraph"><p>Use <em>mods-enabled</em>/<em>mods-available</em> to store Phusion Passenger configuration if you can:</p></div>
@@ -2419,7 +2424,7 @@ Enable by running <span class="monospaced">sudo a2enmod passenger</span>.
2419
2424
  <div class="paragraph"><p>On OS X Server &gt;= 10.8 Mountain Lion the location of the Apache configuration file depends on whether you use Web Services or not. If you do, then the configuration file is in <em>/Library/Server/Web/Config/apache2/httpd_server_app.conf</em>. If you do not, then the configuration file is in <em>/etc/apache2/httpd.conf</em>.</p></div>
2420
2425
  </div>
2421
2426
  <div class="sect2">
2422
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_disabling_without_uninstalling"></span><h3 data-comment-topic="unloading-disabling-phusion-passenger-from-apache-without-uninstalling-it-s1axnx" data-anchor="_disabling_without_uninstalling">2.13. Disabling without uninstalling</h3>
2427
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_disabling_without_uninstalling"></span><h3 data-comment-topic="unloading-disabling-phusion-passenger-from-apache-without-uninstalling-it-s1axnx" data-anchor="_disabling_without_uninstalling">2.14. Disabling without uninstalling</h3>
2423
2428
  <div class="paragraph"><p>You can temporarily unload (disable) Phusion Passenger from the web server, without
2424
2429
  uninstalling the Phusion Passenger files, so that the web server behaves as if Phusion
2425
2430
  Passenger was never installed in the first place. This might be useful to you if -
@@ -2485,7 +2490,7 @@ NameVirtualHosts *:80
2485
2490
  <div class="paragraph"><p>After you’ve done this, save the configuration file and restart the web server.</p></div>
2486
2491
  </div>
2487
2492
  <div class="sect2">
2488
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="uninstalling"></span><h3 data-comment-topic="uninstalling-phusion-passenger-1qb4ssq" data-anchor="uninstalling">2.14. Uninstalling</h3>
2493
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="uninstalling"></span><h3 data-comment-topic="uninstalling-phusion-passenger-1qb4ssq" data-anchor="uninstalling">2.15. Uninstalling</h3>
2489
2494
  <div class="paragraph"><p>To uninstall Phusion Passenger, please first remove all Phusion Passenger
2490
2495
  configuration directives from your web server configuration file(s). After you’ve
2491
2496
  done this, you need to remove the Phusion Passenger files.</p></div>
@@ -2517,7 +2522,7 @@ If you installed Phusion Passenger through APT or YUM, then use them to uninstal
2517
2522
  </ul></div>
2518
2523
  </div>
2519
2524
  <div class="sect2">
2520
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="moving_phusion_passenger"></span><h3 data-comment-topic="moving-to-a-different-directory-1n0gkwh" data-anchor="moving_phusion_passenger">2.15. Moving to a different directory</h3>
2525
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="moving_phusion_passenger"></span><h3 data-comment-topic="moving-to-a-different-directory-1n0gkwh" data-anchor="moving_phusion_passenger">2.16. Moving to a different directory</h3>
2521
2526
  <div class="paragraph"><p>If you installed Phusion Passenger through a tarball then you can move the Phusion Passenger directory to another location. This is not possible if you used any of the other installation methods.</p></div>
2522
2527
  <div class="paragraph"><p>First, move the directory to whereever you like:</p></div>
2523
2528
  <div class="listingblock">
@@ -32,47 +32,49 @@
32
32
 
33
33
  2.4. Installing or upgrading on Red Hat, Fedora, CentOS or ScientificLinux => installing-or-upgrading-on-red-hat-fedora-centos-or-scientificlinux-1y5ie8b
34
34
 
35
- 2.5. Generic installation, upgrade and downgrade method: via RubyGems => installing-via-the-gem-39jw1u
35
+ 2.5. Installing or upgrading on Heroku => installing-or-upgrading-on-heroku-o0o2mk
36
36
 
37
- 2.6. Generic installation, upgrade and downgrade method: via tarball => installing-via-the-source-tarball-1cgxrqc
37
+ 2.6. Generic installation, upgrade and downgrade method: via RubyGems => installing-via-the-gem-39jw1u
38
38
 
39
- 2.7. Upgrading from open source to Enterprise => upgrading-from-open-source-to-enterprise-b17h8g
39
+ 2.7. Generic installation, upgrade and downgrade method: via tarball => installing-via-the-source-tarball-1cgxrqc
40
40
 
41
- 2.8. Cryptographic verification of installation files => cryptographic-verification-of-installation-files-ed3r9v
41
+ 2.8. Upgrading from open source to Enterprise => upgrading-from-open-source-to-enterprise-b17h8g
42
42
 
43
- 2.8.1. Synopsis => synopsis-uwnz2o
43
+ 2.9. Cryptographic verification of installation files => cryptographic-verification-of-installation-files-ed3r9v
44
44
 
45
- 2.8.2. Importing the Phusion Software Signing key => importing-the-phusion-software-signing-key-1x0rhv
45
+ 2.9.1. Synopsis => synopsis-uwnz2o
46
46
 
47
- 2.8.3. Verifying the Phusion Software Signing key => verifying-the-phusion-software-signing-key-10430lg
47
+ 2.9.2. Importing the Phusion Software Signing key => importing-the-phusion-software-signing-key-1x0rhv
48
48
 
49
- 2.8.4. Verifying the gem and tarball => verifying-the-gem-and-tarball-1nf0uov
49
+ 2.9.3. Verifying the Phusion Software Signing key => verifying-the-phusion-software-signing-key-10430lg
50
50
 
51
- 2.8.5. Verifying Git signatures => verifying-git-signatures-oaafwd
51
+ 2.9.4. Verifying the gem and tarball => verifying-the-gem-and-tarball-1nf0uov
52
52
 
53
- 2.8.6. Verifying DEB and RPM packages => verifying-deb-and-rpm-packages-vgtv04
53
+ 2.9.5. Verifying Git signatures => verifying-git-signatures-oaafwd
54
54
 
55
- 2.8.7. Revocation => revocation-4o01n2
55
+ 2.9.6. Verifying DEB and RPM packages => verifying-deb-and-rpm-packages-vgtv04
56
56
 
57
- 2.9. Non-interactive, automatic, headless installs or upgrades => non-interactive-automatic-headless-installs-or-upgrades-1arnxii
57
+ 2.9.7. Revocation => revocation-4o01n2
58
58
 
59
- 2.10. Customizing the compilation process => customizing-the-compilation-process-1sds3od
59
+ 2.10. Non-interactive, automatic, headless installs or upgrades => non-interactive-automatic-headless-installs-or-upgrades-1arnxii
60
60
 
61
- 2.10.1. Setting the compiler => setting-the-compiler-1symq7h
61
+ 2.11. Customizing the compilation process => customizing-the-compilation-process-1sds3od
62
62
 
63
- 2.10.2. Adding additional compiler or linker flags => adding-additional-compiler-or-linker-flags-wzu0ey
63
+ 2.11.1. Setting the compiler => setting-the-compiler-1symq7h
64
64
 
65
- 2.10.3. Forcing location of command line tools and dependencies => forcing-location-of-certain-command-line-tools-1hym30u
65
+ 2.11.2. Adding additional compiler or linker flags => adding-additional-compiler-or-linker-flags-wzu0ey
66
66
 
67
- 2.11. Dealing with multiple Apache installations => dealing-with-multiple-apache-installations-ks5nkz
67
+ 2.11.3. Forcing location of command line tools and dependencies => forcing-location-of-certain-command-line-tools-1hym30u
68
68
 
69
- 2.12. Working with the Apache configuration file => locating-the-apache-configuration-file-1fterqv
69
+ 2.12. Dealing with multiple Apache installations => dealing-with-multiple-apache-installations-ks5nkz
70
70
 
71
- 2.13. Disabling without uninstalling => unloading-disabling-phusion-passenger-from-apache-without-uninstalling-it-s1axnx
71
+ 2.13. Working with the Apache configuration file => locating-the-apache-configuration-file-1fterqv
72
72
 
73
- 2.14. Uninstalling => uninstalling-phusion-passenger-1qb4ssq
73
+ 2.14. Disabling without uninstalling => unloading-disabling-phusion-passenger-from-apache-without-uninstalling-it-s1axnx
74
74
 
75
- 2.15. Moving to a different directory => moving-to-a-different-directory-1n0gkwh
75
+ 2.15. Uninstalling => uninstalling-phusion-passenger-1qb4ssq
76
+
77
+ 2.16. Moving to a different directory => moving-to-a-different-directory-1n0gkwh
76
78
 
77
79
  3. Deploying a Rack-based Ruby application => deploying-a-rack-based-ruby-application-including-rails-3--hcs66f
78
80
 
@@ -1115,27 +1115,28 @@ using the command line.</p></div>
1115
1115
  <div class="foo toclevel4"><a href="#_installing_packages">2.3.2. Installing packages</a></div>
1116
1116
  <div class="foo toclevel4"><a href="#inserting_passenger_root_for_apt">2.3.3. Inserting passenger_root into nginx.conf</a></div>
1117
1117
  <div class="foo toclevel3"><a href="#_installing_or_upgrading_on_red_hat_fedora_centos_or_scientificlinux">2.4. Installing or upgrading on Red Hat, Fedora, CentOS or ScientificLinux</a></div>
1118
- <div class="foo toclevel3"><a href="#rubygems_generic_install">2.5. Generic installation, upgrade and downgrade method: via RubyGems</a></div>
1119
- <div class="foo toclevel3"><a href="#tarball_generic_install">2.6. Generic installation, upgrade and downgrade method: via tarball</a></div>
1120
- <div class="foo toclevel3"><a href="#_upgrading_from_open_source_to_enterprise">2.7. Upgrading from open source to Enterprise</a></div>
1121
- <div class="foo toclevel3"><a href="#_cryptographic_verification_of_installation_files">2.8. Cryptographic verification of installation files</a></div>
1122
- <div class="foo toclevel4"><a href="#_synopsis_2">2.8.1. Synopsis</a></div>
1123
- <div class="foo toclevel4"><a href="#_importing_the_phusion_software_signing_key">2.8.2. Importing the Phusion Software Signing key</a></div>
1124
- <div class="foo toclevel4"><a href="#_verifying_the_phusion_software_signing_key">2.8.3. Verifying the Phusion Software Signing key</a></div>
1125
- <div class="foo toclevel4"><a href="#_verifying_the_gem_and_tarball">2.8.4. Verifying the gem and tarball</a></div>
1126
- <div class="foo toclevel4"><a href="#_verifying_git_signatures">2.8.5. Verifying Git signatures</a></div>
1127
- <div class="foo toclevel4"><a href="#_verifying_deb_and_rpm_packages">2.8.6. Verifying DEB and RPM packages</a></div>
1128
- <div class="foo toclevel4"><a href="#_revocation">2.8.7. Revocation</a></div>
1129
- <div class="foo toclevel3"><a href="#_non_interactive_automatic_headless_installs_or_upgrades">2.9. Non-interactive, automatic, headless installs or upgrades</a></div>
1130
- <div class="foo toclevel3"><a href="#_customizing_the_compilation_process">2.10. Customizing the compilation process</a></div>
1131
- <div class="foo toclevel4"><a href="#_setting_the_compiler">2.10.1. Setting the compiler</a></div>
1132
- <div class="foo toclevel4"><a href="#_adding_additional_compiler_or_linker_flags">2.10.2. Adding additional compiler or linker flags</a></div>
1133
- <div class="foo toclevel4"><a href="#forcing_location_of_command_line_tools_and_dependencies">2.10.3. Forcing location of command line tools and dependencies</a></div>
1134
- <div class="foo toclevel3"><a href="#_installing_as_a_normal_nginx_module_without_using_the_installer">2.11. Installing as a normal Nginx module without using the installer</a></div>
1135
- <div class="foo toclevel3"><a href="#nginx_init_script">2.12. Creating an Nginx init script</a></div>
1136
- <div class="foo toclevel3"><a href="#_disabling_without_uninstalling">2.13. Disabling without uninstalling</a></div>
1137
- <div class="foo toclevel3"><a href="#uninstalling">2.14. Uninstalling</a></div>
1138
- <div class="foo toclevel3"><a href="#moving_phusion_passenger">2.15. Moving to a different directory</a></div>
1118
+ <div class="foo toclevel3"><a href="#_installing_or_upgrading_on_heroku">2.5. Installing or upgrading on Heroku</a></div>
1119
+ <div class="foo toclevel3"><a href="#rubygems_generic_install">2.6. Generic installation, upgrade and downgrade method: via RubyGems</a></div>
1120
+ <div class="foo toclevel3"><a href="#tarball_generic_install">2.7. Generic installation, upgrade and downgrade method: via tarball</a></div>
1121
+ <div class="foo toclevel3"><a href="#_upgrading_from_open_source_to_enterprise">2.8. Upgrading from open source to Enterprise</a></div>
1122
+ <div class="foo toclevel3"><a href="#_cryptographic_verification_of_installation_files">2.9. Cryptographic verification of installation files</a></div>
1123
+ <div class="foo toclevel4"><a href="#_synopsis_2">2.9.1. Synopsis</a></div>
1124
+ <div class="foo toclevel4"><a href="#_importing_the_phusion_software_signing_key">2.9.2. Importing the Phusion Software Signing key</a></div>
1125
+ <div class="foo toclevel4"><a href="#_verifying_the_phusion_software_signing_key">2.9.3. Verifying the Phusion Software Signing key</a></div>
1126
+ <div class="foo toclevel4"><a href="#_verifying_the_gem_and_tarball">2.9.4. Verifying the gem and tarball</a></div>
1127
+ <div class="foo toclevel4"><a href="#_verifying_git_signatures">2.9.5. Verifying Git signatures</a></div>
1128
+ <div class="foo toclevel4"><a href="#_verifying_deb_and_rpm_packages">2.9.6. Verifying DEB and RPM packages</a></div>
1129
+ <div class="foo toclevel4"><a href="#_revocation">2.9.7. Revocation</a></div>
1130
+ <div class="foo toclevel3"><a href="#_non_interactive_automatic_headless_installs_or_upgrades">2.10. Non-interactive, automatic, headless installs or upgrades</a></div>
1131
+ <div class="foo toclevel3"><a href="#_customizing_the_compilation_process">2.11. Customizing the compilation process</a></div>
1132
+ <div class="foo toclevel4"><a href="#_setting_the_compiler">2.11.1. Setting the compiler</a></div>
1133
+ <div class="foo toclevel4"><a href="#_adding_additional_compiler_or_linker_flags">2.11.2. Adding additional compiler or linker flags</a></div>
1134
+ <div class="foo toclevel4"><a href="#forcing_location_of_command_line_tools_and_dependencies">2.11.3. Forcing location of command line tools and dependencies</a></div>
1135
+ <div class="foo toclevel3"><a href="#_installing_as_a_normal_nginx_module_without_using_the_installer">2.12. Installing as a normal Nginx module without using the installer</a></div>
1136
+ <div class="foo toclevel3"><a href="#nginx_init_script">2.13. Creating an Nginx init script</a></div>
1137
+ <div class="foo toclevel3"><a href="#_disabling_without_uninstalling">2.14. Disabling without uninstalling</a></div>
1138
+ <div class="foo toclevel3"><a href="#uninstalling">2.15. Uninstalling</a></div>
1139
+ <div class="foo toclevel3"><a href="#moving_phusion_passenger">2.16. Moving to a different directory</a></div>
1139
1140
  <div class="foo toclevel2"><a href="#deploying_a_rack_app">3. Deploying a Rack-based Ruby application</a></div>
1140
1141
  <div class="foo toclevel3"><a href="#_tutorial_example_writing_and_deploying_a_hello_world_rack_application">3.1. Tutorial/example: writing and deploying a Hello World Rack application</a></div>
1141
1142
  <div class="foo toclevel3"><a href="#_deploying_to_a_virtual_host_8217_s_root">3.2. Deploying to a virtual host’s root</a></div>
@@ -1844,7 +1845,11 @@ http {
1844
1845
  <div class="paragraph"><p>There are instructions for building your own packages and Yum repositories in the <a href="https://github.com/phusion/passenger/tree/master/rpm#readme">rpm directory ReadMe</a> within the <a href="https://github.com/phusion/passenger">GitHub repository</a>.</p></div>
1845
1846
  </div>
1846
1847
  <div class="sect2">
1847
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="rubygems_generic_install"></span><h3 data-comment-topic="generic-installation-upgrade-and-downgrade-method-via-rubygems-76uol7" data-anchor="rubygems_generic_install">2.5. Generic installation, upgrade and downgrade method: via RubyGems</h3>
1848
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_installing_or_upgrading_on_heroku"></span><h3 data-comment-topic="installing-or-upgrading-on-heroku-jh07kr" data-anchor="_installing_or_upgrading_on_heroku">2.5. Installing or upgrading on Heroku</h3>
1849
+ <div class="paragraph"><p>Please refer to our <a href="https://github.com/phusion/passenger-ruby-heroku-demo#readme">Heroku Ruby demo</a> for installation and upgrade instructions for Heroku.</p></div>
1850
+ </div>
1851
+ <div class="sect2">
1852
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="rubygems_generic_install"></span><h3 data-comment-topic="generic-installation-upgrade-and-downgrade-method-via-rubygems-76uol7" data-anchor="rubygems_generic_install">2.6. Generic installation, upgrade and downgrade method: via RubyGems</h3>
1848
1853
  <div class="paragraph"><p>RubyGems is only used as a method to obtain the Phusion Passenger files, so in case you have multiple Ruby versions it does not matter which Ruby’s RubyGems you use for installation. Once installed, Phusion Passenger can work with all other Ruby versions on your system. This is explained in <a href="#relationship_with_ruby">Phusion Passenger and its relationship with Ruby</a>.</p></div>
1849
1854
  <span class="anchor_helper" id="is_ruby_home_or_system_wide_installed"></span><h4 class="float" data-anchor="is_ruby_home_or_system_wide_installed">Step 1: figuring out whether your Ruby is installed in the home directory or system-wide</h4>
1850
1855
  <div class="paragraph"><p>Ruby may either be installed in the home directory, or system-wide. If it’s installed system-wide then we will want to install gems system-wide as well, so you need to switch to a root prompt first. If Ruby is installed in the home directory then we will want to install gems to the home directory as well, as a normal user.</p></div>
@@ -2007,7 +2012,7 @@ At this point you may be interested in <a href="#nginx_init_script">creating an
2007
2012
  <div class="paragraph"><p>If the output is not as expected, then please refer to the <a href="#troubleshooting">Troubleshooting</a> section.</p></div>
2008
2013
  </div>
2009
2014
  <div class="sect2">
2010
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="tarball_generic_install"></span><h3 data-comment-topic="generic-installation-upgrade-and-downgrade-method-via-tarball-2gkx43" data-anchor="tarball_generic_install">2.6. Generic installation, upgrade and downgrade method: via tarball</h3>
2015
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="tarball_generic_install"></span><h3 data-comment-topic="generic-installation-upgrade-and-downgrade-method-via-tarball-2gkx43" data-anchor="tarball_generic_install">2.7. Generic installation, upgrade and downgrade method: via tarball</h3>
2011
2016
  <span class="anchor_helper" id="_step_1_installing_ruby"></span><h4 class="float" data-anchor="_step_1_installing_ruby">Step 1: installing Ruby</h4>
2012
2017
  <div class="paragraph"><p>Phusion Passenger supports multiple languages and its core is written in C++, but its installer and administration tools are written in Ruby, so you must install Ruby.</p></div>
2013
2018
  <div class="paragraph"><p>Even though Ruby is required, Ruby will normally not be loaded during normal operation unless you deploy a Ruby web application on Phusion Passenger. Phusion Passenger’s dependency on Ruby is very minimal. See <a href="#relationship_with_ruby">Phusion Passenger and its relationship with Ruby</a> for details.</p></div>
@@ -2119,7 +2124,7 @@ At this point you may be interested in <a href="#nginx_init_script">creating an
2119
2124
  <div class="paragraph"><p>If the output is not as expected, then please refer to the <a href="#troubleshooting">Troubleshooting</a> section.</p></div>
2120
2125
  </div>
2121
2126
  <div class="sect2">
2122
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_upgrading_from_open_source_to_enterprise"></span><h3 data-comment-topic="upgrading-from-open-source-to-enterprise-1a58c2b" data-anchor="_upgrading_from_open_source_to_enterprise">2.7. Upgrading from open source to Enterprise</h3>
2127
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_upgrading_from_open_source_to_enterprise"></span><h3 data-comment-topic="upgrading-from-open-source-to-enterprise-1a58c2b" data-anchor="_upgrading_from_open_source_to_enterprise">2.8. Upgrading from open source to Enterprise</h3>
2123
2128
  <div class="paragraph"><p>Phusion Passenger comes in two variants: an open source version, as well as an <a href="https://www.phusionpassenger.com/enterprise">Enterprise version</a> which introduces a myriad of useful features that can improve stability and performance and efficiency.</p></div>
2124
2129
  <div class="paragraph"><p>Customers who have bought Phusion Passenger Enterprise can upgrade their open source installation to Enterprise as follows:</p></div>
2125
2130
  <div class="olist arabic"><ol class="arabic">
@@ -2137,13 +2142,13 @@ Install the Enterprise version by following one of the installation guides in th
2137
2142
  <div class="paragraph"><p>The uninstallation is necessary because the Enterprise Ruby gem has a different gem name (<em>passenger-enterprise-server</em> instead of <em>passenger</em>), but the same administration command names (e.g. <span class="monospaced">passenger-status</span>). Uninstalling the open source version avoids any conflicts.</p></div>
2138
2143
  </div>
2139
2144
  <div class="sect2">
2140
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_cryptographic_verification_of_installation_files"></span><h3 data-comment-topic="cryptographic-verification-of-installation-files-2goray" data-anchor="_cryptographic_verification_of_installation_files">2.8. Cryptographic verification of installation files</h3>
2145
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_cryptographic_verification_of_installation_files"></span><h3 data-comment-topic="cryptographic-verification-of-installation-files-2goray" data-anchor="_cryptographic_verification_of_installation_files">2.9. Cryptographic verification of installation files</h3>
2141
2146
  <div class="sect3">
2142
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_synopsis_2"></span><h4 data-comment-topic="synopsis-4fv6zw" data-anchor="_synopsis_2">2.8.1. Synopsis</h4>
2147
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_synopsis_2"></span><h4 data-comment-topic="synopsis-4fv6zw" data-anchor="_synopsis_2">2.9.1. Synopsis</h4>
2143
2148
  <div class="paragraph"><p>We digitally sign various files with our GPG key so that you can check whether they’re legit, i.e. whether they really came from Phusion and haven’t been tampered with by a third party. We apply signing since the open source version 4.0.0 RC 4, or the Enterprise version 4.0.0 RC 1.</p></div>
2144
2149
  </div>
2145
2150
  <div class="sect3">
2146
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_importing_the_phusion_software_signing_key"></span><h4 data-comment-topic="importing-the-phusion-software-signing-key-1qfpaj4" data-anchor="_importing_the_phusion_software_signing_key">2.8.2. Importing the Phusion Software Signing key</h4>
2151
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_importing_the_phusion_software_signing_key"></span><h4 data-comment-topic="importing-the-phusion-software-signing-key-1qfpaj4" data-anchor="_importing_the_phusion_software_signing_key">2.9.2. Importing the Phusion Software Signing key</h4>
2147
2152
  <div class="paragraph"><p>Phusion’s GPG key for signing software is as follows:</p></div>
2148
2153
  <div class="literalblock">
2149
2154
  <div class="content monospaced">
@@ -2165,7 +2170,7 @@ gpg --keyserver keyserver.ubuntu.com --search-keys 0x2AC745A50A212A8C</pre>
2165
2170
  <div class="paragraph"><p>The email address <a href="mailto:software-signing@phusion.nl">software-signing@phusion.nl</a> redirects to <a href="mailto:info@phusion.nl">info@phusion.nl</a> so it’s safe to send email there.</p></div>
2166
2171
  </div>
2167
2172
  <div class="sect3">
2168
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_the_phusion_software_signing_key"></span><h4 data-comment-topic="verifying-the-phusion-software-signing-key-i7f1vj" data-anchor="_verifying_the_phusion_software_signing_key">2.8.3. Verifying the Phusion Software Signing key</h4>
2173
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_the_phusion_software_signing_key"></span><h4 data-comment-topic="verifying-the-phusion-software-signing-key-i7f1vj" data-anchor="_verifying_the_phusion_software_signing_key">2.9.3. Verifying the Phusion Software Signing key</h4>
2169
2174
  <div class="paragraph"><p>The Phusion Software Signing key is also <strong>signed by the Phusion founders</strong>. Their keys are as follows:</p></div>
2170
2175
  <div class="literalblock">
2171
2176
  <div class="content monospaced">
@@ -2195,7 +2200,7 @@ gpg --keyserver keyserver.ubuntu.com --search-keys 0xAE405F7869481265</pre>
2195
2200
  </div>
2196
2201
  </div>
2197
2202
  <div class="sect3">
2198
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_the_gem_and_tarball"></span><h4 data-comment-topic="verifying-the-gem-and-tarball-dr9466" data-anchor="_verifying_the_gem_and_tarball">2.8.4. Verifying the gem and tarball</h4>
2203
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_the_gem_and_tarball"></span><h4 data-comment-topic="verifying-the-gem-and-tarball-dr9466" data-anchor="_verifying_the_gem_and_tarball">2.9.4. Verifying the gem and tarball</h4>
2199
2204
  <div class="paragraph"><p>You can find the open source version’s gem and tarball GPG signatures at <a href="https://www.phusionpassenger.com/file_releases">https://www.phusionpassenger.com/file_releases</a>. The Enterprise version’s GPG signatures can be found in the <a href="https://www.phusionpassenger.com/orders">Customer Area</a>. All signatures have the <em>.asc</em> extension. Once you have imported our key, you can verify the validity of a file against its signature as follows:</p></div>
2200
2205
  <div class="listingblock">
2201
2206
  <div class="content monospaced">
@@ -2206,7 +2211,7 @@ gpg: Good signature from "Phusion Software Signing &lt;software-signing@phusion.
2206
2211
  </div>
2207
2212
  </div>
2208
2213
  <div class="sect3">
2209
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_git_signatures"></span><h4 data-comment-topic="verifying-git-signatures-dyo4fk" data-anchor="_verifying_git_signatures">2.8.5. Verifying Git signatures</h4>
2214
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_git_signatures"></span><h4 data-comment-topic="verifying-git-signatures-dyo4fk" data-anchor="_verifying_git_signatures">2.9.5. Verifying Git signatures</h4>
2210
2215
  <div class="paragraph"><p>Tags in the <a href="https://github.com/phusion/passenger">Git repository for the open source version</a> are also tagged. You can verify a Git tag as follows:</p></div>
2211
2216
  <div class="listingblock">
2212
2217
  <div class="content monospaced">
@@ -2223,11 +2228,11 @@ gpg: Good signature from "Phusion Software Signing &lt;software-signing@phusion.
2223
2228
  </div>
2224
2229
  </div>
2225
2230
  <div class="sect3">
2226
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_deb_and_rpm_packages"></span><h4 data-comment-topic="verifying-deb-and-rpm-packages-1ed36d5" data-anchor="_verifying_deb_and_rpm_packages">2.8.6. Verifying DEB and RPM packages</h4>
2231
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_verifying_deb_and_rpm_packages"></span><h4 data-comment-topic="verifying-deb-and-rpm-packages-1ed36d5" data-anchor="_verifying_deb_and_rpm_packages">2.9.6. Verifying DEB and RPM packages</h4>
2227
2232
  <div class="paragraph"><p>The DEB and RPM packages are signed with the signatures of the respective packagers. They are automatically checked upon installation.</p></div>
2228
2233
  </div>
2229
2234
  <div class="sect3">
2230
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_revocation"></span><h4 data-comment-topic="revocation-xwvhea" data-anchor="_revocation">2.8.7. Revocation</h4>
2235
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_revocation"></span><h4 data-comment-topic="revocation-xwvhea" data-anchor="_revocation">2.9.7. Revocation</h4>
2231
2236
  <div class="paragraph"><p>In the event our key is compromised, we will revoke the key and upload the revocation information to sks-servers.net and keyserver.ubuntu.com. However your system will not know about the revocation until you update the keys from the keyservers. You should update your keys regularly (e.g. once a week) by invoking:</p></div>
2232
2237
  <div class="listingblock">
2233
2238
  <div class="content monospaced">
@@ -2245,14 +2250,14 @@ gpg --refresh-keys --keyserver keyserver.ubuntu.com</pre>
2245
2250
  </div>
2246
2251
  </div>
2247
2252
  <div class="sect2">
2248
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_non_interactive_automatic_headless_installs_or_upgrades"></span><h3 data-comment-topic="non-interactive-automatic-headless-installs-or-upgrades-834ymv" data-anchor="_non_interactive_automatic_headless_installs_or_upgrades">2.9. Non-interactive, automatic, headless installs or upgrades</h3>
2253
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_non_interactive_automatic_headless_installs_or_upgrades"></span><h3 data-comment-topic="non-interactive-automatic-headless-installs-or-upgrades-834ymv" data-anchor="_non_interactive_automatic_headless_installs_or_upgrades">2.10. Non-interactive, automatic, headless installs or upgrades</h3>
2249
2254
  <div class="paragraph"><p>By default, the installer (<span class="monospaced">passenger-install-nginx-module</span>) is interactive. If you want to automate installation then you can do so by passing various answers to the installer through command line options. Please run the installer with <span class="monospaced">--help</span> for a list of available command line options.</p></div>
2250
2255
  </div>
2251
2256
  <div class="sect2">
2252
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_customizing_the_compilation_process"></span><h3 data-comment-topic="customizing-the-compilation-process-u4cdcf" data-anchor="_customizing_the_compilation_process">2.10. Customizing the compilation process</h3>
2257
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_customizing_the_compilation_process"></span><h3 data-comment-topic="customizing-the-compilation-process-u4cdcf" data-anchor="_customizing_the_compilation_process">2.11. Customizing the compilation process</h3>
2253
2258
  <div class="paragraph"><p>The Phusion Passenger compilation process can be customized with environment variables. You can learn more about environment variables in <a href="#about_environment_variables">About environment variables</a>.</p></div>
2254
2259
  <div class="sect3">
2255
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_setting_the_compiler"></span><h4 data-comment-topic="setting-the-compiler-1l6dpe1" data-anchor="_setting_the_compiler">2.10.1. Setting the compiler</h4>
2260
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_setting_the_compiler"></span><h4 data-comment-topic="setting-the-compiler-1l6dpe1" data-anchor="_setting_the_compiler">2.11.1. Setting the compiler</h4>
2256
2261
  <div class="paragraph"><p>You can force the Phusion Passenger build system to use a specific C or C++ compiler by setting the <span class="monospaced">CC</span> and <span class="monospaced">CXX</span> environment variables. These may be set to any arbitrary shell commands.</p></div>
2257
2262
  <div class="paragraph"><p>For example, contributors who want to hack on Phusion Passenger may want to use Clang for faster compilation and <a href="http://ccache.samba.org/">ccache</a> for faster recompilation, and may want to enable more error-catching compilation flags:</p></div>
2258
2263
  <div class="listingblock">
@@ -2275,7 +2280,7 @@ http://www.gnu.org/software/src-highlite -->
2275
2280
  </div>
2276
2281
  </div>
2277
2282
  <div class="sect3">
2278
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_adding_additional_compiler_or_linker_flags"></span><h4 data-comment-topic="adding-additional-compiler-or-linker-flags-1jehjon" data-anchor="_adding_additional_compiler_or_linker_flags">2.10.2. Adding additional compiler or linker flags</h4>
2283
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_adding_additional_compiler_or_linker_flags"></span><h4 data-comment-topic="adding-additional-compiler-or-linker-flags-1jehjon" data-anchor="_adding_additional_compiler_or_linker_flags">2.11.2. Adding additional compiler or linker flags</h4>
2279
2284
  <div class="paragraph"><p>On some systems, C/C++ libraries and headers that Phusion Passenger requires may be located in a non-standard directory. You can force the Phusion Passenger build system to look in those locations by injecting compiler and linker flags using the following environment variables:</p></div>
2280
2285
  <div class="dlist"><dl>
2281
2286
  <dt class="hdlist1">
@@ -2377,7 +2382,7 @@ http://www.gnu.org/software/src-highlite -->
2377
2382
  </div>
2378
2383
  </div>
2379
2384
  <div class="sect3">
2380
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="forcing_location_of_command_line_tools_and_dependencies"></span><h4 data-comment-topic="forcing-location-of-certain-command-line-tools-1j93cki" data-anchor="forcing_location_of_command_line_tools_and_dependencies">2.10.3. Forcing location of command line tools and dependencies</h4>
2385
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="forcing_location_of_command_line_tools_and_dependencies"></span><h4 data-comment-topic="forcing-location-of-certain-command-line-tools-1j93cki" data-anchor="forcing_location_of_command_line_tools_and_dependencies">2.11.3. Forcing location of command line tools and dependencies</h4>
2381
2386
  <div class="paragraph"><p>The Phusion Passenger build system attempts to autodetect many things by locating relevant helper tools. For example, to find out which compiler flags it should use for compiling Apache modules, it locates the <span class="monospaced">apxs2</span> command and queries it. To find out which compiler flags it should use for libcurl, it queries the <span class="monospaced">curl-config</span> command. These commands may not be in <span class="monospaced">$PATH</span>, or even when they are you may want to use a different one.</p></div>
2382
2387
  <div class="paragraph"><p>You can force the build to find certain command line tools at certain locations by using the following environment variables:</p></div>
2383
2388
  <div class="dlist"><dl>
@@ -2459,7 +2464,7 @@ http://www.gnu.org/software/src-highlite -->
2459
2464
  </div>
2460
2465
  </div>
2461
2466
  <div class="sect2">
2462
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_installing_as_a_normal_nginx_module_without_using_the_installer"></span><h3 data-comment-topic="installing-as-a-normal-nginx-module-without-using-the-installer-1kkpes5" data-anchor="_installing_as_a_normal_nginx_module_without_using_the_installer">2.11. Installing as a normal Nginx module without using the installer</h3>
2467
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_installing_as_a_normal_nginx_module_without_using_the_installer"></span><h3 data-comment-topic="installing-as-a-normal-nginx-module-without-using-the-installer-1kkpes5" data-anchor="_installing_as_a_normal_nginx_module_without_using_the_installer">2.12. Installing as a normal Nginx module without using the installer</h3>
2463
2468
  <div class="paragraph"><p>You can also install Phusion Passenger the way you install any other Nginx module, e.g. with <span class="monospaced">--add-module</span>. This installation mode is useful if you already have an Nginx tarball somewhere.</p></div>
2464
2469
  <div class="paragraph"><p>You need to run Nginx’s configure script with <span class="monospaced">--add-module=/path-to-passenger-nginx-addon-dir</span>. The right value for <span class="monospaced">/path-to-passenger-nginx-addon-dir</span> can be obtained with the command:</p></div>
2465
2470
  <div class="listingblock">
@@ -2483,7 +2488,7 @@ line into your Nginx configuration file:</p></div>
2483
2488
  <div class="paragraph"><p>After having modified the Nginx configuration file, restart Nginx.</p></div>
2484
2489
  </div>
2485
2490
  <div class="sect2">
2486
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="nginx_init_script"></span><h3 data-comment-topic="creating-an-nginx-init-script-1kd8zg5" data-anchor="nginx_init_script">2.12. Creating an Nginx init script</h3>
2491
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="nginx_init_script"></span><h3 data-comment-topic="creating-an-nginx-init-script-1kd8zg5" data-anchor="nginx_init_script">2.13. Creating an Nginx init script</h3>
2487
2492
  <div class="paragraph"><p>If you installed Nginx with one of the generic installation methods then you won’t have an init script to start, stop and restart Nginx with. A bare Nginx installation works with signals: you start it by invoking it from the command line, you stop it by sending SIGTERM to it and you gracefully restart it by sending SIGHUP to it.</p></div>
2488
2493
  <div class="paragraph"><p>If you prefer to use an init script then please refer to the following resources:</p></div>
2489
2494
  <div class="ulist"><ul>
@@ -2506,7 +2511,7 @@ line into your Nginx configuration file:</p></div>
2506
2511
  <div class="paragraph"><p>When using one of those init scripts, please make sure that the paths inside the init script are correct. In particular, the paths to the Nginx binary, to the PID file and to the configuration file must match the actual locations of your Nginx installation.</p></div>
2507
2512
  </div>
2508
2513
  <div class="sect2">
2509
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_disabling_without_uninstalling"></span><h3 data-comment-topic="disabling-without-uninstalling-1t5tqan" data-anchor="_disabling_without_uninstalling">2.13. Disabling without uninstalling</h3>
2514
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="_disabling_without_uninstalling"></span><h3 data-comment-topic="disabling-without-uninstalling-1t5tqan" data-anchor="_disabling_without_uninstalling">2.14. Disabling without uninstalling</h3>
2510
2515
  <div class="paragraph"><p>You can temporarily unload (disable) Phusion Passenger from the web server, without
2511
2516
  uninstalling the Phusion Passenger files, so that the web server behaves as if Phusion
2512
2517
  Passenger was never installed in the first place. This might be useful to you if -
@@ -2562,7 +2567,7 @@ http {
2562
2567
  <div class="paragraph"><p>After you’ve done this, save the configuration file and restart the web server.</p></div>
2563
2568
  </div>
2564
2569
  <div class="sect2">
2565
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="uninstalling"></span><h3 data-comment-topic="uninstalling-phusion-passenger-wuycvb" data-anchor="uninstalling">2.14. Uninstalling</h3>
2570
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="uninstalling"></span><h3 data-comment-topic="uninstalling-phusion-passenger-wuycvb" data-anchor="uninstalling">2.15. Uninstalling</h3>
2566
2571
  <div class="paragraph"><p>To uninstall Phusion Passenger, please first remove all Phusion Passenger
2567
2572
  configuration directives from your web server configuration file(s). After you’ve
2568
2573
  done this, you need to remove the Phusion Passenger files.</p></div>
@@ -2594,7 +2599,7 @@ If you installed Phusion Passenger through APT or YUM, then use them to uninstal
2594
2599
  <div class="paragraph"><p>Nginx does not have to be recompiled after uninstalling Phusion Passenger. Altough Nginx will contain the Phusion Passenger Nginx module, the module will not do anything when all Phusion Passenger configuration directives are removed.</p></div>
2595
2600
  </div>
2596
2601
  <div class="sect2">
2597
- <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="moving_phusion_passenger"></span><h3 data-comment-topic="moving-to-a-different-directory-gif3wo" data-anchor="moving_phusion_passenger">2.15. Moving to a different directory</h3>
2602
+ <a href="javascript:void(0)" class="comments empty" title="Add a comment"><span class="count"></span></a><span class="anchor_helper" id="moving_phusion_passenger"></span><h3 data-comment-topic="moving-to-a-different-directory-gif3wo" data-anchor="moving_phusion_passenger">2.16. Moving to a different directory</h3>
2598
2603
  <div class="paragraph"><p>If you installed Phusion Passenger through a tarball then you can move the Phusion Passenger directory to another location. This is not possible if you used any of the other installation methods.</p></div>
2599
2604
  <div class="paragraph"><p>First, move the directory to whereever you like:</p></div>
2600
2605
  <div class="listingblock">