passenger 5.0.14 → 5.0.15

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 (70) hide show
  1. checksums.yaml +8 -8
  2. checksums.yaml.gz.asc +7 -7
  3. data.tar.gz.asc +7 -7
  4. data/CHANGELOG +9 -0
  5. data/INSTALL.md +1 -1
  6. data/LICENSE +1 -1
  7. data/README.md +1 -1
  8. data/bin/passenger-install-apache2-module +6 -10
  9. data/bin/passenger-install-nginx-module +6 -9
  10. data/doc/CloudLicensingConfiguration.html +1 -216
  11. data/doc/CloudLicensingConfiguration.txt.md +1 -192
  12. data/doc/Design and Architecture.html +4 -4
  13. data/doc/Design and Architecture.txt +4 -4
  14. data/doc/ServerOptimizationGuide.html +1 -489
  15. data/doc/ServerOptimizationGuide.txt.md +1 -399
  16. data/doc/Users guide Apache.html +594 -6720
  17. data/doc/Users guide Apache.idmap.txt +15 -12
  18. data/doc/Users guide Apache.txt +113 -2047
  19. data/doc/Users guide Nginx.html +565 -6720
  20. data/doc/Users guide Nginx.idmap.txt +15 -12
  21. data/doc/Users guide Nginx.txt +94 -1862
  22. data/doc/Users guide Standalone.html +53 -2183
  23. data/doc/Users guide Standalone.idmap.txt +9 -6
  24. data/doc/Users guide Standalone.txt +16 -360
  25. data/doc/Users guide.html +3 -145
  26. data/doc/Users guide.txt +2 -54
  27. data/doc/users_guide_snippets/analysis_and_system_maintenance.txt +36 -175
  28. data/doc/users_guide_snippets/appendix_c_spawning_methods.txt +9 -215
  29. data/doc/users_guide_snippets/environment_variables.txt +11 -243
  30. data/doc/users_guide_snippets/installation.txt +66 -946
  31. data/doc/users_guide_snippets/rackup_specifications.txt +1 -75
  32. data/doc/users_guide_snippets/support_information.txt +1 -48
  33. data/doc/users_guide_snippets/tips.txt +103 -704
  34. data/doc/users_guide_snippets/troubleshooting/default.txt +16 -130
  35. data/doc/users_guide_snippets/troubleshooting/rails.txt +15 -12
  36. data/doc/users_guide_snippets/under_the_hood/relationship_with_ruby.txt +2 -113
  37. data/ext/apache2/Configuration.hpp +2 -2
  38. data/ext/apache2/Hooks.cpp +2 -2
  39. data/ext/common/AgentsStarter.h +18 -10
  40. data/ext/common/ApplicationPool2/ErrorRenderer.h +0 -3
  41. data/ext/common/ApplicationPool2/Options.h +8 -1
  42. data/ext/common/Constants.h +3 -9
  43. data/ext/common/agent/Core/RequestHandler/InitRequest.cpp +2 -0
  44. data/ext/common/agent/Watchdog/Main.cpp +1 -1
  45. data/ext/nginx/ContentHandler.c +2 -3
  46. data/ext/nginx/config +2 -2
  47. data/lib/phusion_passenger.rb +1 -22
  48. data/lib/phusion_passenger/abstract_installer.rb +10 -10
  49. data/lib/phusion_passenger/config/agent_compiler.rb +5 -5
  50. data/lib/phusion_passenger/config/nginx_engine_compiler.rb +4 -4
  51. data/lib/phusion_passenger/config/validate_install_command.rb +3 -3
  52. data/lib/phusion_passenger/constants.rb +1 -5
  53. data/lib/phusion_passenger/loader_shared_helpers.rb +16 -5
  54. data/lib/phusion_passenger/platform_info/apache_detector.rb +2 -2
  55. data/lib/phusion_passenger/public_api.rb +11 -2
  56. data/lib/phusion_passenger/request_handler/thread_handler.rb +2 -3
  57. data/lib/phusion_passenger/ruby_core_io_enhancements.rb +4 -1
  58. data/lib/phusion_passenger/standalone/start_command.rb +1 -1
  59. data/resources/oss-binaries.phusionpassenger.com.crt +124 -0
  60. data/resources/templates/apache2/deployment_example.txt.erb +5 -23
  61. data/resources/templates/apache2/installing_against_a_different_apache.txt.erb +3 -4
  62. data/resources/templates/apache2/possible_solutions_for_compilation_and_installation_problems.txt.erb +3 -3
  63. data/resources/templates/apache2/rpm_installation_recommended.txt.erb +1 -1
  64. data/resources/templates/installer_common/low_amount_of_memory_warning.txt.erb +4 -5
  65. data/resources/templates/nginx/deployment_example.txt.erb +5 -17
  66. data/resources/templates/nginx/possible_solutions_for_compilation_and_installation_problems.txt.erb +3 -3
  67. data/resources/templates/standalone/config.erb +1 -1
  68. data/resources/templates/undisclosed_error.html.template +4 -11
  69. metadata +2 -2
  70. metadata.gz.asc +7 -7
@@ -1073,161 +1073,19 @@ pre {
1073
1073
  <img src="images/phusion_banner.png" alt="images/phusion_banner.png">
1074
1074
  </a>
1075
1075
  </span></p></div>
1076
- <div class="paragraph"><p><a href="https://www.phusionpassenger.com/">Phusion Passenger</a> is a web server and application server, designed to be fast, robust and lightweight. It runs your web apps with the least amount of hassle by taking care of almost all administrative heavy lifting for you. Advanced administration tools allow you to gain deep insight into your web applications' operations and to keep your servers healthy. Phusion Passenger is polyglot by design, and currently supports Ruby (Rack), Python (WSGI) and Node.js.</p></div>
1077
- <div class="paragraph"><p>Phusion Passenger has several integration modes, each mode with its own documentation, covering <strong>installation</strong>, <strong>usage</strong>, <strong>troubleshooting</strong> and more.</p></div>
1078
1076
  </div>
1079
1077
  </div>
1080
1078
  <div id="toc">
1081
1079
  <div id="toctitle">Table of Contents</div>
1082
- <div class="foo toclevel2"><a href="#overview">1. Overview</a></div>
1083
- <div class="foo toclevel3"><a href="#_nginx_integration_mode">1.1. Nginx integration mode</a></div>
1084
- <div class="foo toclevel3"><a href="#_apache_integration_mode">1.2. Apache integration mode</a></div>
1085
- <div class="foo toclevel3"><a href="#_standalone_mode">1.3. Standalone mode</a></div>
1086
- <div class="foo toclevel2"><a href="#installation">2. Installation and upgrade</a></div>
1087
- <div class="foo toclevel2"><a href="#troubleshooting">3. Troubleshooting</a></div>
1088
- <div class="foo toclevel2"><a href="#support">4. Where to get support</a></div>
1089
- <div class="foo toclevel2"><a href="#_appendix_a_about_this_document">5. Appendix A: About this document</a></div>
1080
+ <div class="foo toclevel2"><a href="#_the_documentation_has_moved">1. The documentation has moved</a></div>
1090
1081
  </div>
1091
1082
  </div>
1092
1083
  <div id="content">
1093
1084
 
1094
1085
  <div class="sect1">
1095
- <span class="anchor_helper" id="overview"></span><h2 data-anchor="overview">1. Overview</h2>
1086
+ <span class="anchor_helper" id="_the_documentation_has_moved"></span><h2 data-anchor="_the_documentation_has_moved">1. The documentation has moved</h2>
1096
1087
  <div class="sectionbody">
1097
- <div class="sect2">
1098
- <span class="anchor_helper" id="_nginx_integration_mode"></span><h3 data-anchor="_nginx_integration_mode">1.1. Nginx integration mode</h3>
1099
- <div class="paragraph"><p>In this mode, Phusion Passenger integrates directly into Nginx as an Nginx module. You operate Phusion Passenger mostly through Nginx and through Nginx configuration files. The Nginx integration mode is, along with the Standalone mode, highly optimized for performance.</p></div>
1100
- <div class="paragraph"><p><a href="Users%20guide%20Nginx.html"><strong>Read the documentation for the Nginx integration mode &gt;&gt;</strong></a></p></div>
1101
- </div>
1102
- <div class="sect2">
1103
- <span class="anchor_helper" id="_apache_integration_mode"></span><h3 data-anchor="_apache_integration_mode">1.2. Apache integration mode</h3>
1104
- <div class="paragraph"><p>In this mode, Phusion Passenger integrates directly into Apache as an Apache module. You operate Phusion Passenger mostly through Apache and through Apache configuration files.</p></div>
1105
- <div class="paragraph"><p><a href="Users%20guide%20Apache.html"><strong>Read the documentation for the Apache integration mode &gt;&gt;</strong></a></p></div>
1106
- </div>
1107
- <div class="sect2">
1108
- <span class="anchor_helper" id="_standalone_mode"></span><h3 data-anchor="_standalone_mode">1.3. Standalone mode</h3>
1109
- <div class="paragraph"><p>In this mode, Phusion Passenger operates as a fully-featured, secure standalone HTTP server. You do not need to have an existing web server like Apache or Nginx. This mode is ideal…</p></div>
1110
- <div class="ulist"><ul>
1111
- <li>
1112
- <p>
1113
- …if you are not familiar with Apache or Nginx
1114
- </p>
1115
- </li>
1116
- <li>
1117
- <p>
1118
- …when you want to quickly start up a server without editing configuration files (e.g. during development)
1119
- </p>
1120
- </li>
1121
- <li>
1122
- <p>
1123
- …or when you want to decouple the web server from the application server, by setting up reverse proxies.
1124
- </p>
1125
- </li>
1126
- </ul></div>
1127
- <div class="paragraph"><p>Along with the Nginx mode, the Standalone mode is highly optimized for performance.</p></div>
1128
- <div class="paragraph"><p><a href="Users%20guide%20Standalone.html"><strong>Read the documentation for the Standalone mode &gt;&gt;</strong></a></p></div>
1129
- </div>
1130
- </div>
1131
- </div>
1132
- <div class="sect1">
1133
- <span class="anchor_helper" id="installation"></span><h2 data-anchor="installation">2. Installation and upgrade</h2>
1134
- <div class="sectionbody">
1135
- <div class="paragraph"><p>Please refer to:</p></div>
1136
- <div class="ulist"><ul>
1137
- <li>
1138
- <p>
1139
- <a href="Users%20guide%20Nginx.html#installation"><strong>Nginx</strong> mode installation &amp; upgrade</a>
1140
- </p>
1141
- </li>
1142
- <li>
1143
- <p>
1144
- <a href="Users%20guide%20Apache.html#installation"><strong>Apache</strong> mode installation &amp; upgrade</a>
1145
- </p>
1146
- </li>
1147
- <li>
1148
- <p>
1149
- <a href="Users%20guide%20Standalone.html#installation"><strong>Standalone</strong> mode installation &amp; upgrade</a>
1150
- </p>
1151
- </li>
1152
- </ul></div>
1153
- </div>
1154
- </div>
1155
- <div class="sect1">
1156
- <span class="anchor_helper" id="troubleshooting"></span><h2 data-anchor="troubleshooting">3. Troubleshooting</h2>
1157
- <div class="sectionbody">
1158
- <div class="paragraph"><p>Please refer to:</p></div>
1159
- <div class="ulist"><ul>
1160
- <li>
1161
- <p>
1162
- <a href="Users%20guide%20Nginx.html#troubleshooting"><strong>Nginx</strong> mode troubleshooting</a>
1163
- </p>
1164
- </li>
1165
- <li>
1166
- <p>
1167
- <a href="Users%20guide%20Apache.html#troubleshooting"><strong>Apache</strong> mode troubleshooting</a>
1168
- </p>
1169
- </li>
1170
- <li>
1171
- <p>
1172
- <a href="Users%20guide%20Standalone.html#troubleshooting"><strong>Standalone</strong> mode troubleshooting</a>
1173
- </p>
1174
- </li>
1175
- </ul></div>
1176
- </div>
1177
- </div>
1178
- <div class="sect1">
1179
- <span class="anchor_helper" id="support"></span><h2 data-anchor="support">4. Where to get support</h2>
1180
- <div class="sectionbody">
1181
- <div class="ulist"><ul>
1182
- <li>
1183
- <p>
1184
- <a href="http://groups.google.com/group/phusion-passenger">Community discussion forum</a> - post a
1185
- message here if you’re experiencing problems. Support on this forum is provided by the community on a best-effort basis, so a (timely) response is not guaranteed.
1186
- </p>
1187
- </li>
1188
- <li>
1189
- <p>
1190
- <a href="https://github.com/phusion/passenger/issues">Issue tracker</a> - report
1191
- bugs here.
1192
- </p>
1193
- </li>
1194
- <li>
1195
- <p>
1196
- Email <a href="mailto:support@phusion.nl">support@phusion.nl</a> if you are a <a href="https://www.phusionpassenger.com/enterprise">Phusion Passenger Enterprise</a> customer. Please mention your order reference. If you are not an Enterprise customer, we kindly redirect you to the community discussion forum instead.
1197
- </p>
1198
- </li>
1199
- <li>
1200
- <p>
1201
- <a href="https://www.phusionpassenger.com/commercial_support">Commercial support contracts</a> are also available.
1202
- </p>
1203
- </li>
1204
- <li>
1205
- <p>
1206
- Report security vulnerabilities to <a href="mailto:security@phusion.nl">security@phusion.nl</a>. We will do our best to respond to you as quickly as we can, so please do not disclose the vulnerability until then.
1207
- </p>
1208
- </li>
1209
- </ul></div>
1210
- <div class="paragraph"><p>Please consult <a href="https://www.phusionpassenger.com/support">the Phusion Passenger website</a> for a full list of support resources.</p></div>
1211
- </div>
1212
- </div>
1213
- <div class="sect1">
1214
- <span class="anchor_helper" id="_appendix_a_about_this_document"></span><h2 data-anchor="_appendix_a_about_this_document">5. Appendix A: About this document</h2>
1215
- <div class="sectionbody">
1216
- <div class="paragraph"><p>The text of this document is licensed under the
1217
- <a href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons
1218
- Attribution-Share Alike 3.0 Unported License</a>.</p></div>
1219
- <div class="paragraph"><p><span class="image">
1220
- <a class="image" href="http://creativecommons.org/licenses/by-sa/3.0/">
1221
- <img src="images/by_sa.png" alt="images/by_sa.png">
1222
- </a>
1223
- </span></p></div>
1224
- <div class="paragraph"><p>Phusion Passenger is brought to you by <a href="http://www.phusion.nl/">Phusion</a>.</p></div>
1225
- <div class="paragraph"><p><span class="image">
1226
- <a class="image" href="http://www.phusion.nl/">
1227
- <img src="images/phusion_banner.png" alt="images/phusion_banner.png">
1228
- </a>
1229
- </span></p></div>
1230
- <div class="paragraph"><p>Phusion Passenger is a trademark of Hongli Lai &amp; Ninh Bui.</p></div>
1088
+ <div class="paragraph"><p>This is the old, deprecated Passenger Standalone documentation. Please visit <a href="https://www.phusionpassenger.com/library/">https://www.phusionpassenger.com/library/</a> for the new documentation.</p></div>
1231
1089
  </div>
1232
1090
  </div>
1233
1091
  </div>
@@ -3,58 +3,6 @@ Phusion Passenger users guide index
3
3
 
4
4
  image:images/phusion_banner.png[link="http://www.phusion.nl/"]
5
5
 
6
- link:https://www.phusionpassenger.com/[Phusion Passenger] is a web server and application server, designed to be fast, robust and lightweight. It runs your web apps with the least amount of hassle by taking care of almost all administrative heavy lifting for you. Advanced administration tools allow you to gain deep insight into your web applications' operations and to keep your servers healthy. Phusion Passenger is polyglot by design, and currently supports Ruby (Rack), Python (WSGI) and Node.js.
6
+ == The documentation has moved
7
7
 
8
- Phusion Passenger has several integration modes, each mode with its own documentation, covering *installation*, *usage*, *troubleshooting* and more.
9
-
10
- [[overview]]
11
- == Overview
12
-
13
- === Nginx integration mode
14
-
15
- In this mode, Phusion Passenger integrates directly into Nginx as an Nginx module. You operate Phusion Passenger mostly through Nginx and through Nginx configuration files. The Nginx integration mode is, along with the Standalone mode, highly optimized for performance.
16
-
17
- link:Users%20guide%20Nginx.html[**Read the documentation for the Nginx integration mode >>**]
18
-
19
- === Apache integration mode
20
-
21
- In this mode, Phusion Passenger integrates directly into Apache as an Apache module. You operate Phusion Passenger mostly through Apache and through Apache configuration files.
22
-
23
- link:Users%20guide%20Apache.html[**Read the documentation for the Apache integration mode >>**]
24
-
25
- === Standalone mode
26
-
27
- In this mode, Phusion Passenger operates as a fully-featured, secure standalone HTTP server. You do not need to have an existing web server like Apache or Nginx. This mode is ideal...
28
-
29
- * ...if you are not familiar with Apache or Nginx
30
- * ...when you want to quickly start up a server without editing configuration files (e.g. during development)
31
- * ...or when you want to decouple the web server from the application server, by setting up reverse proxies.
32
-
33
- Along with the Nginx mode, the Standalone mode is highly optimized for performance.
34
-
35
- link:Users%20guide%20Standalone.html[**Read the documentation for the Standalone mode >>**]
36
-
37
- [[installation]]
38
- == Installation and upgrade
39
-
40
- Please refer to:
41
-
42
- * link:Users%20guide%20Nginx.html#installation[**Nginx** mode installation & upgrade]
43
- * link:Users%20guide%20Apache.html#installation[**Apache** mode installation & upgrade]
44
- * link:Users%20guide%20Standalone.html#installation[**Standalone** mode installation & upgrade]
45
-
46
- [[troubleshooting]]
47
- == Troubleshooting
48
-
49
- Please refer to:
50
-
51
- * link:Users%20guide%20Nginx.html#troubleshooting[**Nginx** mode troubleshooting]
52
- * link:Users%20guide%20Apache.html#troubleshooting[**Apache** mode troubleshooting]
53
- * link:Users%20guide%20Standalone.html#troubleshooting[**Standalone** mode troubleshooting]
54
-
55
- [[support]]
56
- == Where to get support
57
-
58
- include::users_guide_snippets/where_to_get_support.txt[]
59
-
60
- include::users_guide_snippets/appendix_a_about.txt[]
8
+ This is the old, deprecated Passenger Standalone documentation. Please visit https://www.phusionpassenger.com/library/ for the new documentation.
@@ -1,128 +1,27 @@
1
- Phusion Passenger provides a set of tools, which are useful for system analysis,
2
- maintenance and troubleshooting.
3
-
4
-
5
1
  === Inspecting memory usage ===
6
2
 
7
- Process inspection tools such as `ps` and `top` are useful, but they
8
- link:http://groups.google.com/group/phusion-passenger/msg/1fd1c233456d3180[rarely show the correct memory usage].
9
- The real memory usage is usually lower than what `ps` and `top` report.
10
-
11
- There are many technical reasons why this is so, but an explanation is beyond
12
- the scope of this Users Guide. We kindly refer the interested reader to
13
- operating systems literature about 'virtual memory' and 'copy-on-write'.
14
-
15
- The tool `passenger-memory-stats` allows one to easily analyze Phusion Passenger's
16
- and the web server's real memory usage. For example:
17
-
18
- -------------------------------------------------------
19
- [bash@localhost root]# passenger-memory-stats
20
- ------------- Apache processes --------------.
21
- PID PPID Threads VMSize Private Name
22
- ---------------------------------------------.
23
- 5947 1 9 90.6 MB 0.5 MB /usr/sbin/apache2 -k start
24
- 5948 5947 1 18.9 MB 0.7 MB /usr/sbin/fcgi-pm -k start
25
- 6029 5947 1 42.7 MB 0.5 MB /usr/sbin/apache2 -k start
26
- 6030 5947 1 42.7 MB 0.5 MB /usr/sbin/apache2 -k start
27
- 6031 5947 1 42.5 MB 0.3 MB /usr/sbin/apache2 -k start
28
- 6033 5947 1 42.5 MB 0.4 MB /usr/sbin/apache2 -k start
29
- 6034 5947 1 50.5 MB 0.4 MB /usr/sbin/apache2 -k start
30
- 23482 5947 1 82.6 MB 0.4 MB /usr/sbin/apache2 -k start
31
- ### Processes: 8
32
- ### Total private dirty RSS: 3.50 MB
33
-
34
- ----------- Nginx processes ------------.
35
- PID PPID VMSize Resident Name
36
- ----------------------------------------.
37
- 51766 51764 82.7 MB 3.9 MB nginx: master process ./objs/nginx
38
- 51773 51766 82.9 MB 0.9 MB nginx: worker process
39
-
40
- --------- Passenger processes ---------.
41
- PID Threads VMSize Private Name
42
- ---------------------------------------.
43
- 6026 1 10.9 MB 4.7 MB Passenger spawn server
44
- 23481 1 26.7 MB 3.0 MB Passenger FrameworkSpawner: 2.0.2
45
- 23791 1 26.8 MB 2.9 MB Passenger ApplicationSpawner: /var/www/projects/app1-foobar
46
- 23793 1 26.9 MB 17.1 MB Rails: /var/www/projects/app1-foobar
47
- ### Processes: 4
48
- ### Total private dirty RSS: 27.76 M
49
- -------------------------------------------------------
50
-
51
- The 'Private' or 'private dirty RSS' field shows the *real* memory usage of processes. Here,
52
- we see that all the Apache and Nginx worker processes only take less than 1 MB memory each.
53
- This is a lot less than the 50-80 MB-ish memory usage as shown in the 'VMSize' column
54
- (which is what a lot of people think is the real memory usage, but is actually not).
55
-
56
- NOTE: Private dirty RSS reporting only works on Linux. Unfortunately other operating systems
57
- don't provide facilities for determining processes' private dirty RSS. On non-Linux systems,
58
- the Resident Set Size is reported instead.
3
+ ifdef::apache[]
4
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/apache/overall_status_report.html
5
+ endif::[]
6
+ ifdef::nginx[]
7
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/nginx/overall_status_report.html
8
+ endif::[]
9
+ ifdef::standalone[]
10
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/standalone/overall_status_report.html
11
+ endif::[]
59
12
 
60
13
 
61
14
  === Inspecting Phusion Passenger's internal status ===
62
15
 
63
- One can inspect Phusion Passenger's internal status with the tool `passenger-status`.
64
- This tool must typically be run as root. For example:
65
-
66
- --------------------------------------------------
67
- [bash@localhost root]# passenger-status
68
- ----------- General information -----------
69
- max = 6
70
- count = 1
71
- active = 0
72
- inactive = 1
73
-
74
- ----------- Domains -----------
75
- /var/www/projects/app1-foobar:
76
- PID: 9617 Sessions: 0 Processed: 7 Uptime: 2m 23s
77
- --------------------------------------------------
78
-
79
- The 'general information' section shows the following information:
80
-
81
- max:: The maximum number of application instances that Phusion Passenger will
82
- spawn. This equals the value given for <<PassengerMaxPoolSize,PassengerMaxPoolSize>> (Apache)
83
- or <<PassengerMaxPoolSize,passenger_max_pool_size>> (Nginx).
84
- count:: The number of application instances that are currently alive. This value
85
- is always less than or equal to 'max'.
86
- active:: The number of application instances that are currently processing
87
- requests. This value is always less than or equal to 'count'.
88
- inactive:: The number of application instances that are currently *not* processing
89
- requests, i.e. are idle. Idle application instances will be shutdown after a while,
90
- as can be specified with <<PassengerPoolIdleTime,PassengerPoolIdleTime (Apache)>>/<<PassengerPoolIdleTime,passenger_pool_idle_time (Nginx)>> (unless this
91
- value is set to 0, in which case application instances are never shut down via idle
92
- time). The value of 'inactive' equals `count - active`.
93
-
94
- The 'domains' section shows, for each application directory, information about running
95
- application instances:
96
-
97
- Sessions:: Shows how many HTTP client are currently in the queue of that application
98
- Instance, waiting to be processed.
99
- Processed:: Indicates how many requests the instance has served until now. *Tip:* it's
100
- possible to limit this number with the <<PassengerMaxRequests,PassengerMaxRequests>>
101
- configuration directive.
102
- Uptime:: Shows for how long the application instance has been running.
103
-
104
- Since Phusion Passenger uses fair load balancing by default, the number of sessions for the
105
- application instances should be fairly close to each other. For example, this is fairly
106
- normal:
107
- --------------------------------
108
- PID: 4281 Sessions: 2 Processed: 7 Uptime: 5m 11s
109
- PID: 4268 Sessions: 0 Processed: 5 Uptime: 4m 52s
110
- PID: 4265 Sessions: 1 Processed: 6 Uptime: 5m 38s
111
- PID: 4275 Sessions: 1 Processed: 7 Uptime: 3m 14s
112
- --------------------------------
113
-
114
- But if you see a "spike", i.e. an application instance has an unusually high number of
115
- sessions compared to the others, then there might be a problem:
116
- --------------------------------
117
- PID: 4281 Sessions: 2 Processed: 7 Uptime: 5m 11s
118
- PID: 17468 Sessions: 8 <-+ Processed: 2 Uptime: 4m 47s
119
- PID: 4265 Sessions: 1 | Processed: 6 Uptime: 5m 38s
120
- PID: 4275 Sessions: 1 | Processed: 7 Uptime: 3m 14s
121
- |
122
- +---- "spike"
123
- --------------------------------
124
-
125
- The most likely reason why a spike occurs is because your application is frozen, i.e. it has stopped responding. See <<debugging_frozen,Debugging frozen applications>> for tips.
16
+ ifdef::apache[]
17
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/apache/overall_status_report.html
18
+ endif::[]
19
+ ifdef::nginx[]
20
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/nginx/overall_status_report.html
21
+ endif::[]
22
+ ifdef::standalone[]
23
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/standalone/overall_status_report.html
24
+ endif::[]
126
25
 
127
26
 
128
27
  [[debugging_frozen]]
@@ -139,62 +38,24 @@ a backtrace without aborting.
139
38
 
140
39
  === Accessing individual application processes ===
141
40
 
142
- When a request is sent to the web server, Phusion Passenger will automatically forward
143
- the request to the most suitable application process, but sometimes it is desirable to
144
- be able to directly access the individual application processes. Use cases include, but
145
- are not limited to:
146
-
147
- * One wants to debug a memory leak or memory bloat problem that only seems to appear on
148
- certain URIs. One can send a request to a specific process to see whether that request
149
- causes the process's memory usage to rise.
150
- * The application caches data in local memory, and one wants to tell a specific
151
- application process to clear that local data.
152
- * Other debugging use cases.
153
-
154
- All individual application processes are accessible via HTTP, so you can use standard
155
- HTTP tools like 'curl'. The exact addresses can be obtained with the command
156
- `passenger-status --verbose`. These sockets are all bound to 127.0.0.1, but the port
157
- number is dynamically assigned. As a security measure, the sockets are also protected
158
- with a process-specific random password, which you can see in the
159
- `passenger-status --verbose` output. This password must be sent through the
160
- ``X-Passenger-Connect-Password'' HTTP header.
161
-
162
- Example:
163
-
164
- [listing]
165
- ......................................
166
- bash# passenger-status --verbose
167
- ----------- General information -----------
168
- max = 6
169
- count = 2
170
- active = 0
171
- inactive = 2
172
- Waiting on global queue: 0
173
-
174
- ----------- Application groups -----------
175
- /Users/hongli/Sites/rack.test:
176
- App root: /Users/hongli/Sites/rack.test
177
- * PID: 24235 Sessions: 0 Processed: 7 Uptime: 17s
178
- URL : http://127.0.0.1:58122
179
- Password: nFfVOX1F8LjZ90HJh28Sd_htJOsgRsNne2QXKf8NIXw
180
- * PID: 24250 Sessions: 0 Processed: 4 Uptime: 1s
181
- URL : http://127.0.0.1:57933
182
- Password: _RGXlQ9EGDGJKLevQ_qflUtF1KmxEo2UiRzMwIE1sBY
183
- ......................................
184
-
185
- Here we see that the web application 'rack.test' has two processes.
186
- Process 24235 is accessible via http://127.0.0.1:58122, and
187
- process 24250 is accessible via http://127.0.0.1:57933.
188
-
189
- To access 24235 we must send its password, 'nFfVOX1F8LjZ90HJh28Sd_htJOsgRsNne2QXKf8NIXw',
190
- through the 'X-Passenger-Connect-Password' HTTP header, like this:
191
-
192
- -------------------------------------------
193
- bash# curl -H "X-Passenger-Connect-Password: nFfVOX1F8LjZ90HJh28Sd_htJOsgRsNne2QXKf8NIXw" http://127.0.0.1:58122/
194
- -------------------------------------------
41
+ ifdef::apache[]
42
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/apache/request_individual_processes.html
43
+ endif::[]
44
+ ifdef::nginx[]
45
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/nginx/request_individual_processes.html
46
+ endif::[]
47
+ ifdef::standalone[]
48
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/standalone/request_individual_processes.html
49
+ endif::[]
195
50
 
196
51
  === Attaching an IRB console to an application process ===
197
- :version: 3.0.0
198
- include::enterprise_only.txt[]
199
52
 
200
- You can attach an IRB console to any application process and inspect its state by executing arbitrary Ruby code. Do this by invoking `passenger-irb <PID>` where '<PID>' is the PID of the application process you wish to inspect. Note that the IRB console is currently only available for Ruby apps, not for apps in any other languages.
53
+ ifdef::apache[]
54
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/apache/debugging_console/
55
+ endif::[]
56
+ ifdef::nginx[]
57
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/nginx/debugging_console/
58
+ endif::[]
59
+ ifdef::standalone[]
60
+ This documentation has moved. Please visit https://www.phusionpassenger.com/library/admin/standalone/debugging_console/
61
+ endif::[]