passenger 5.1.10 → 5.1.11
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.
- checksums.yaml +4 -4
- data/CHANGELOG +18 -0
- data/Rakefile +20 -17
- data/bin/passenger-install-apache2-module +14 -11
- data/build/agent.rb +45 -18
- data/build/apache2.rb +32 -16
- data/build/basics.rb +29 -40
- data/build/common_library.rb +70 -54
- data/build/cxx_tests.rb +34 -43
- data/build/integration_tests.rb +10 -10
- data/build/misc.rb +6 -6
- data/build/node_tests.rb +1 -2
- data/build/oxt_tests.rb +7 -5
- data/build/packaging.rb +11 -441
- data/build/ruby_extension.rb +1 -1
- data/build/ruby_tests.rb +1 -2
- data/build/support/cplusplus.rb +6 -5
- data/build/support/cxx_dependency_map.rb +357 -833
- data/build/support/general.rb +23 -1
- data/build/test_basics.rb +3 -28
- data/dev/ci/tests/rpm/Jenkinsfile +68 -0
- data/dev/ci/tests/rpm/run +63 -0
- data/dev/ci/tests/source-packaging/run +1 -1
- data/dev/ci/tests/source-packaging/setup +1 -1
- data/doc/{Packaging.txt.md → Packaging.md} +0 -0
- data/resources/templates/apache2/deployment_example.txt.erb +2 -2
- data/resources/templates/apache2/multiple_apache_installations_detected.txt.erb +2 -2
- data/resources/templates/nginx/deployment_example.txt.erb +1 -1
- data/resources/templates/standalone/mass_deployment_default_server.erb +2 -2
- data/resources/templates/standalone/server.erb +2 -2
- data/src/agent/AgentMain.cpp +0 -4
- data/src/agent/Core/CoreMain.cpp +88 -5
- data/src/agent/Core/SpawningKit/Spawner.h +2 -1
- data/src/agent/Shared/Fundamentals/AbortHandler.cpp +1109 -0
- data/src/agent/Shared/Fundamentals/AbortHandler.h +63 -0
- data/src/agent/Shared/Fundamentals/Implementation.cpp +7 -0
- data/src/agent/Shared/Fundamentals/Initialization.cpp +614 -0
- data/src/agent/Shared/{Base.h → Fundamentals/Initialization.h} +23 -14
- data/src/agent/Shared/Fundamentals/Utils.cpp +127 -0
- data/src/agent/Shared/Fundamentals/Utils.h +46 -0
- data/src/agent/TempDirToucher/TempDirToucherMain.cpp +1 -1
- data/src/agent/Watchdog/CoreWatcher.cpp +3 -1
- data/src/agent/Watchdog/InstanceDirToucher.cpp +90 -53
- data/src/agent/Watchdog/WatchdogMain.cpp +13 -29
- data/src/apache2_module/Hooks.cpp +4 -1
- data/src/cxx_supportlib/ConfigKit/Store.h +32 -5
- data/src/cxx_supportlib/Constants.h +1 -2
- data/src/cxx_supportlib/Crypto.cpp +2 -1
- data/src/cxx_supportlib/Hooks.h +16 -37
- data/src/cxx_supportlib/LoggingKit/Context.h +22 -0
- data/src/cxx_supportlib/LoggingKit/Forward.h +1 -0
- data/src/cxx_supportlib/LoggingKit/Implementation.cpp +106 -22
- data/src/cxx_supportlib/ProcessManagement/Ruby.cpp +106 -0
- data/src/{agent/UstRouter/FileSink.h → cxx_supportlib/ProcessManagement/Ruby.h} +23 -47
- data/src/cxx_supportlib/ProcessManagement/Spawn.cpp +199 -0
- data/src/cxx_supportlib/ProcessManagement/Spawn.h +150 -0
- data/src/cxx_supportlib/ProcessManagement/Utils.cpp +459 -0
- data/src/cxx_supportlib/ProcessManagement/Utils.h +107 -0
- data/src/cxx_supportlib/Utils.cpp +41 -561
- data/src/cxx_supportlib/Utils.h +0 -68
- data/src/cxx_supportlib/Utils/AsyncSignalSafeUtils.h +187 -0
- data/src/cxx_supportlib/Utils/ProcessMetricsCollector.h +14 -2
- data/src/cxx_supportlib/WatchdogLauncher.h +2 -12
- data/src/cxx_supportlib/oxt/dynamic_thread_group.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/jsoncpp/json-forwards.h +4 -0
- data/src/cxx_supportlib/vendor-modified/jsoncpp/json.h +16 -1
- data/src/cxx_supportlib/vendor-modified/jsoncpp/jsoncpp.cpp +12 -9
- data/src/cxx_supportlib/vendor-modified/libev/ev++.h +4 -4
- data/src/cxx_supportlib/vendor-modified/libev/ev.h +3 -3
- data/src/nginx_module/CacheLocationConfig.c +0 -75
- data/src/nginx_module/CacheLocationConfig.c.cxxcodebuilder +1 -0
- data/src/nginx_module/Configuration.c +0 -1
- data/src/nginx_module/Configuration.h +0 -1
- data/src/nginx_module/ConfigurationCommands.c +1 -1
- data/src/nginx_module/ContentHandler.c +0 -1
- data/src/nginx_module/ContentHandler.h +0 -1
- data/src/nginx_module/CreateLocationConfig.c +0 -5
- data/src/nginx_module/CreateLocationConfig.c.cxxcodebuilder +1 -0
- data/src/nginx_module/LocationConfig.h +0 -4
- data/src/nginx_module/LocationConfig.h.cxxcodebuilder +2 -1
- data/src/nginx_module/MergeLocationConfig.c +0 -12
- data/src/nginx_module/MergeLocationConfig.c.cxxcodebuilder +1 -0
- data/src/nginx_module/ngx_http_passenger_module.h +0 -1
- data/src/ruby_supportlib/phusion_passenger.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +20 -11
- data/src/ruby_supportlib/phusion_passenger/config/api_call_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/reopen_logs_command.rb +0 -1
- data/src/ruby_supportlib/phusion_passenger/config/validate_install_command.rb +10 -3
- data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +3 -1
- data/src/ruby_supportlib/phusion_passenger/constants.rb +0 -1
- data/src/ruby_supportlib/phusion_passenger/debug_logging.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +32 -6
- data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +0 -1
- data/src/ruby_supportlib/phusion_passenger/packaging.rb +2 -4
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +101 -20
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache_detector.rb +21 -9
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +34 -31
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +3 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/apache2.rb +2 -14
- data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +40 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +15 -14
- data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +8 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +19 -18
- data/src/ruby_supportlib/phusion_passenger/standalone/stop_command.rb +6 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +17 -1
- metadata +19 -97
- data/build/documentation.rb +0 -70
- data/doc/CloudLicensingConfiguration.html +0 -172
- data/doc/CloudLicensingConfiguration.txt.md +0 -3
- data/doc/Packaging.html +0 -488
- data/doc/Security of user switching support.idmap.txt +0 -34
- data/doc/Security of user switching support.txt +0 -197
- data/doc/ServerOptimizationGuide.html +0 -172
- data/doc/ServerOptimizationGuide.txt.md +0 -3
- data/doc/images/by_sa.png +0 -0
- data/doc/images/cloud_licensing_batch_job.png +0 -0
- data/doc/images/code_walkthrough.jpg +0 -0
- data/doc/images/direct_spawning.png +0 -0
- data/doc/images/direct_spawning.svg +0 -251
- data/doc/images/glyphicons-halflings-white.png +0 -0
- data/doc/images/glyphicons-halflings.png +0 -0
- data/doc/images/icons/README +0 -5
- data/doc/images/icons/callouts/1.png +0 -0
- data/doc/images/icons/callouts/10.png +0 -0
- data/doc/images/icons/callouts/11.png +0 -0
- data/doc/images/icons/callouts/12.png +0 -0
- data/doc/images/icons/callouts/13.png +0 -0
- data/doc/images/icons/callouts/14.png +0 -0
- data/doc/images/icons/callouts/15.png +0 -0
- data/doc/images/icons/callouts/2.png +0 -0
- data/doc/images/icons/callouts/3.png +0 -0
- data/doc/images/icons/callouts/4.png +0 -0
- data/doc/images/icons/callouts/5.png +0 -0
- data/doc/images/icons/callouts/6.png +0 -0
- data/doc/images/icons/callouts/7.png +0 -0
- data/doc/images/icons/callouts/8.png +0 -0
- data/doc/images/icons/callouts/9.png +0 -0
- data/doc/images/icons/caution.png +0 -0
- data/doc/images/icons/example.png +0 -0
- data/doc/images/icons/home.png +0 -0
- data/doc/images/icons/important.png +0 -0
- data/doc/images/icons/next.png +0 -0
- data/doc/images/icons/note.png +0 -0
- data/doc/images/icons/prev.png +0 -0
- data/doc/images/icons/tip.png +0 -0
- data/doc/images/icons/up.png +0 -0
- data/doc/images/icons/warning.png +0 -0
- data/doc/images/many_web_framework_protocols.png +0 -0
- data/doc/images/passenger_architecture.png +0 -0
- data/doc/images/passenger_architecture.svg +0 -385
- data/doc/images/passenger_architecture_overview.png +0 -0
- data/doc/images/passenger_core_architecture.png +0 -0
- data/doc/images/passenger_nodejs_architecture.svg +0 -558
- data/doc/images/phusion_banner.png +0 -0
- data/doc/images/rack.png +0 -0
- data/doc/images/smart_spawning.png +0 -0
- data/doc/images/smart_spawning.svg +0 -323
- data/doc/images/spawn_server_architecture.png +0 -0
- data/doc/images/spawn_server_architecture.svg +0 -655
- data/doc/images/spawning_preparation_work.png +0 -0
- data/doc/images/startup_sequence.png +0 -0
- data/doc/images/typical_isolated_web_application.png +0 -0
- data/doc/images/typical_isolated_web_application.svg +0 -213
- data/doc/users_guide_snippets/alternative_for_flying_passenger.txt +0 -1
- data/doc/users_guide_snippets/analysis_and_system_maintenance.txt +0 -61
- data/doc/users_guide_snippets/appendix_a_about.txt +0 -13
- data/doc/users_guide_snippets/appendix_b_terminology.txt +0 -71
- data/doc/users_guide_snippets/appendix_c_spawning_methods.txt +0 -36
- data/doc/users_guide_snippets/deployment_basics.txt +0 -37
- data/doc/users_guide_snippets/enterprise_only.txt +0 -1
- data/doc/users_guide_snippets/environment_variables.txt +0 -44
- data/doc/users_guide_snippets/global_queueing_explained.txt +0 -74
- data/doc/users_guide_snippets/installation.txt +0 -228
- data/doc/users_guide_snippets/installation/run_installer.txt +0 -58
- data/doc/users_guide_snippets/installation/verify_running_epilogue.txt +0 -6
- data/doc/users_guide_snippets/passenger_spawn_method.txt +0 -37
- data/doc/users_guide_snippets/rackup_specifications.txt +0 -1
- data/doc/users_guide_snippets/rvm_helper_tool.txt +0 -44
- data/doc/users_guide_snippets/since_version.txt +0 -1
- data/doc/users_guide_snippets/support_information.txt +0 -8
- data/doc/users_guide_snippets/tips.txt +0 -302
- data/doc/users_guide_snippets/troubleshooting/default.txt +0 -48
- data/doc/users_guide_snippets/troubleshooting/rails.txt +0 -59
- data/doc/users_guide_snippets/under_the_hood/page_caching_support.txt +0 -24
- data/doc/users_guide_snippets/under_the_hood/relationship_with_ruby.txt +0 -10
- data/doc/users_guide_snippets/where_to_get_support.txt +0 -9
- data/src/agent/Shared/Base.cpp +0 -1678
- data/src/agent/UstRouter/ApiServer.h +0 -292
- data/src/agent/UstRouter/Client.h +0 -112
- data/src/agent/UstRouter/Controller.h +0 -1309
- data/src/agent/UstRouter/LogSink.h +0 -145
- data/src/agent/UstRouter/OptionParser.h +0 -180
- data/src/agent/UstRouter/RemoteSender.h +0 -853
- data/src/agent/UstRouter/RemoteSink.h +0 -145
- data/src/agent/UstRouter/Transaction.h +0 -278
- data/src/agent/UstRouter/UstRouterMain.cpp +0 -681
- data/src/agent/Watchdog/UstRouterWatcher.cpp +0 -80
- data/src/ruby_supportlib/phusion_passenger/platform_info/macos.rb +0 -45
Binary file
|
Binary file
|
Binary file
|
@@ -1,213 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
2
|
-
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
3
|
-
<svg
|
4
|
-
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
5
|
-
xmlns:cc="http://web.resource.org/cc/"
|
6
|
-
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
7
|
-
xmlns:svg="http://www.w3.org/2000/svg"
|
8
|
-
xmlns="http://www.w3.org/2000/svg"
|
9
|
-
xmlns:xlink="http://www.w3.org/1999/xlink"
|
10
|
-
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
11
|
-
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
12
|
-
width="490"
|
13
|
-
height="235"
|
14
|
-
id="svg2"
|
15
|
-
sodipodi:version="0.32"
|
16
|
-
inkscape:version="0.45.1"
|
17
|
-
version="1.0"
|
18
|
-
sodipodi:docbase="/home/hongli/Projects/mod_rails/doc/images"
|
19
|
-
sodipodi:docname="typical_isolated_web_application.svg"
|
20
|
-
inkscape:output_extension="org.inkscape.output.svg.inkscape"
|
21
|
-
inkscape:export-filename="/home/hongli/Projects/mod_rails/doc/images/typical_isolated_web_application.png"
|
22
|
-
inkscape:export-xdpi="90"
|
23
|
-
inkscape:export-ydpi="90">
|
24
|
-
<defs
|
25
|
-
id="defs4">
|
26
|
-
<marker
|
27
|
-
inkscape:stockid="Arrow1Mend"
|
28
|
-
orient="auto"
|
29
|
-
refY="0"
|
30
|
-
refX="0"
|
31
|
-
id="Arrow1Mend"
|
32
|
-
style="overflow:visible">
|
33
|
-
<path
|
34
|
-
id="path3179"
|
35
|
-
d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z "
|
36
|
-
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
|
37
|
-
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
38
|
-
</marker>
|
39
|
-
<linearGradient
|
40
|
-
id="linearGradient3148">
|
41
|
-
<stop
|
42
|
-
style="stop-color:#19a300;stop-opacity:1;"
|
43
|
-
offset="0"
|
44
|
-
id="stop3150" />
|
45
|
-
<stop
|
46
|
-
style="stop-color:#89f676;stop-opacity:1;"
|
47
|
-
offset="1"
|
48
|
-
id="stop3152" />
|
49
|
-
</linearGradient>
|
50
|
-
<linearGradient
|
51
|
-
id="linearGradient3136">
|
52
|
-
<stop
|
53
|
-
style="stop-color:#02a800;stop-opacity:1;"
|
54
|
-
offset="0"
|
55
|
-
id="stop3138" />
|
56
|
-
<stop
|
57
|
-
id="stop3144"
|
58
|
-
offset="0.27777779"
|
59
|
-
style="stop-color:#37e928;stop-opacity:1;" />
|
60
|
-
<stop
|
61
|
-
style="stop-color:#53f03c;stop-opacity:1;"
|
62
|
-
offset="0.65895063"
|
63
|
-
id="stop3146" />
|
64
|
-
<stop
|
65
|
-
style="stop-color:#d5ffc5;stop-opacity:1;"
|
66
|
-
offset="1"
|
67
|
-
id="stop3140" />
|
68
|
-
</linearGradient>
|
69
|
-
<linearGradient
|
70
|
-
inkscape:collect="always"
|
71
|
-
xlink:href="#linearGradient3136"
|
72
|
-
id="linearGradient3163"
|
73
|
-
gradientUnits="userSpaceOnUse"
|
74
|
-
x1="296.5"
|
75
|
-
y1="148.86218"
|
76
|
-
x2="291.5"
|
77
|
-
y2="83.862183" />
|
78
|
-
<linearGradient
|
79
|
-
inkscape:collect="always"
|
80
|
-
xlink:href="#linearGradient3148"
|
81
|
-
id="linearGradient3165"
|
82
|
-
gradientUnits="userSpaceOnUse"
|
83
|
-
x1="263.5"
|
84
|
-
y1="148.86218"
|
85
|
-
x2="244.5"
|
86
|
-
y2="78.862183" />
|
87
|
-
</defs>
|
88
|
-
<sodipodi:namedview
|
89
|
-
id="base"
|
90
|
-
pagecolor="#ffffff"
|
91
|
-
bordercolor="#666666"
|
92
|
-
borderopacity="1.0"
|
93
|
-
gridtolerance="10000"
|
94
|
-
guidetolerance="10"
|
95
|
-
objecttolerance="10"
|
96
|
-
inkscape:pageopacity="1"
|
97
|
-
inkscape:pageshadow="2"
|
98
|
-
inkscape:zoom="1"
|
99
|
-
inkscape:cx="375"
|
100
|
-
inkscape:cy="160"
|
101
|
-
inkscape:document-units="px"
|
102
|
-
inkscape:current-layer="layer1"
|
103
|
-
inkscape:window-width="1280"
|
104
|
-
inkscape:window-height="702"
|
105
|
-
inkscape:window-x="0"
|
106
|
-
inkscape:window-y="72"
|
107
|
-
width="490px"
|
108
|
-
height="235px" />
|
109
|
-
<metadata
|
110
|
-
id="metadata7">
|
111
|
-
<rdf:RDF>
|
112
|
-
<cc:Work
|
113
|
-
rdf:about="">
|
114
|
-
<dc:format>image/svg+xml</dc:format>
|
115
|
-
<dc:type
|
116
|
-
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
117
|
-
</cc:Work>
|
118
|
-
</rdf:RDF>
|
119
|
-
</metadata>
|
120
|
-
<g
|
121
|
-
inkscape:label="Layer 1"
|
122
|
-
inkscape:groupmode="layer"
|
123
|
-
id="layer1"
|
124
|
-
transform="translate(-12.747352,-41.519898)">
|
125
|
-
<g
|
126
|
-
id="g3158"
|
127
|
-
transform="translate(59,77)">
|
128
|
-
<rect
|
129
|
-
ry="25"
|
130
|
-
rx="25"
|
131
|
-
y="81.362183"
|
132
|
-
x="189"
|
133
|
-
height="65"
|
134
|
-
width="215"
|
135
|
-
id="rect2160"
|
136
|
-
style="opacity:1;fill:url(#linearGradient3163);fill-opacity:1;stroke:url(#linearGradient3165);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
137
|
-
<text
|
138
|
-
id="text2162"
|
139
|
-
y="121.6162"
|
140
|
-
x="217.72668"
|
141
|
-
style="font-size:20.23151207px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
142
|
-
xml:space="preserve"><tspan
|
143
|
-
y="121.6162"
|
144
|
-
x="217.72668"
|
145
|
-
id="tspan2164"
|
146
|
-
sodipodi:role="line">Web application</tspan></text>
|
147
|
-
</g>
|
148
|
-
<path
|
149
|
-
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
150
|
-
d="M 156.125,192.23718 L 238.125,192.23718"
|
151
|
-
id="path3156" />
|
152
|
-
<path
|
153
|
-
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
154
|
-
d="M 398,157.23718 L 398,102.96896"
|
155
|
-
id="path3365" />
|
156
|
-
<text
|
157
|
-
xml:space="preserve"
|
158
|
-
style="font-size:16.59993172px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:110.00000238%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
159
|
-
x="85.478348"
|
160
|
-
y="184.42551"
|
161
|
-
id="text3367"
|
162
|
-
sodipodi:linespacing="110%"><tspan
|
163
|
-
sodipodi:role="line"
|
164
|
-
id="tspan3369"
|
165
|
-
x="85.478346"
|
166
|
-
y="184.42551"
|
167
|
-
style="font-size:16.59993172px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:110.00000238%;writing-mode:lr-tb;text-anchor:middle;font-family:Arial">1. HTTP request</tspan><tspan
|
168
|
-
sodipodi:role="line"
|
169
|
-
x="85.478348"
|
170
|
-
y="202.68543"
|
171
|
-
id="tspan3371"
|
172
|
-
style="font-size:16.59993172px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:110.00000238%;writing-mode:lr-tb;text-anchor:middle;font-family:Arial">(input)</tspan></text>
|
173
|
-
<text
|
174
|
-
xml:space="preserve"
|
175
|
-
style="font-size:16.59993172px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:110.00000238%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
176
|
-
x="396.45288"
|
177
|
-
y="62.451099"
|
178
|
-
id="text3373"
|
179
|
-
sodipodi:linespacing="110%"><tspan
|
180
|
-
sodipodi:role="line"
|
181
|
-
id="tspan3375"
|
182
|
-
x="396.45288"
|
183
|
-
y="62.451099"
|
184
|
-
style="font-size:16.59993172px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:110.00000238%;writing-mode:lr-tb;text-anchor:middle;font-family:Arial">3. HTTP response</tspan><tspan
|
185
|
-
sodipodi:role="line"
|
186
|
-
x="396.45288"
|
187
|
-
y="80.711025"
|
188
|
-
id="tspan3377"
|
189
|
-
style="font-size:16.59993172px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:110.00000238%;writing-mode:lr-tb;text-anchor:middle;font-family:Arial">(output)</tspan></text>
|
190
|
-
<path
|
191
|
-
sodipodi:type="arc"
|
192
|
-
style="opacity:1;fill:#a4ff8d;fill-opacity:1;stroke:#229f0f;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
193
|
-
id="path3379"
|
194
|
-
sodipodi:cx="315.5"
|
195
|
-
sodipodi:cy="304.86218"
|
196
|
-
sodipodi:rx="67.5"
|
197
|
-
sodipodi:ry="28.5"
|
198
|
-
d="M 383 304.86218 A 67.5 28.5 0 1 1 248,304.86218 A 67.5 28.5 0 1 1 383 304.86218 z"
|
199
|
-
transform="translate(104,-70)" />
|
200
|
-
<text
|
201
|
-
xml:space="preserve"
|
202
|
-
style="font-size:16.59993172px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:110.00000238%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
203
|
-
x="421.45288"
|
204
|
-
y="240.45111"
|
205
|
-
id="text3385"
|
206
|
-
sodipodi:linespacing="110%"><tspan
|
207
|
-
sodipodi:role="line"
|
208
|
-
x="421.45288"
|
209
|
-
y="240.45111"
|
210
|
-
id="tspan3389"
|
211
|
-
style="font-size:16.59993172px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:110.00000238%;writing-mode:lr-tb;text-anchor:middle;font-family:Arial">2. Processing</tspan></text>
|
212
|
-
</g>
|
213
|
-
</svg>
|
@@ -1 +0,0 @@
|
|
1
|
-
NOTE: This option has no effect when you are using <<flying_passenger,Flying Passenger>>. Instead, you should configure this by passing the {option} command line option to the Flying Passenger daemon.
|
@@ -1,61 +0,0 @@
|
|
1
|
-
=== Inspecting memory usage ===
|
2
|
-
|
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::[]
|
12
|
-
|
13
|
-
|
14
|
-
=== Inspecting Phusion Passenger's internal status ===
|
15
|
-
|
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::[]
|
25
|
-
|
26
|
-
|
27
|
-
[[debugging_frozen]]
|
28
|
-
=== Debugging frozen applications ===
|
29
|
-
|
30
|
-
If one of your application processes is frozen (stopped responding), then you
|
31
|
-
can figure out where it is frozen by killing it with 'SIGABRT'. This will cause the
|
32
|
-
processs to print a backtrace, after which it aborts. The backtrace information is
|
33
|
-
logged into the web server error log file.
|
34
|
-
|
35
|
-
In case of Ruby applications, you can also send the 'SIGQUIT' signal to have it print
|
36
|
-
a backtrace without aborting.
|
37
|
-
|
38
|
-
|
39
|
-
=== Accessing individual application processes ===
|
40
|
-
|
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::[]
|
50
|
-
|
51
|
-
=== Attaching an IRB console to an application process ===
|
52
|
-
|
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::[]
|
@@ -1,13 +0,0 @@
|
|
1
|
-
== Appendix A: About this document ==
|
2
|
-
|
3
|
-
The text of this document is licensed under the
|
4
|
-
link:http://creativecommons.org/licenses/by-sa/3.0/[Creative Commons
|
5
|
-
Attribution-Share Alike 3.0 Unported License].
|
6
|
-
|
7
|
-
image:images/by_sa.png[link="http://creativecommons.org/licenses/by-sa/3.0/"]
|
8
|
-
|
9
|
-
Phusion Passenger is brought to you by link:http://www.phusion.nl/[Phusion].
|
10
|
-
|
11
|
-
image:images/phusion_banner.png[link="http://www.phusion.nl/"]
|
12
|
-
|
13
|
-
"Passenger", "Phusion Passenger" and "Union Station" are registered trademarks of Phusion Holding B.V.
|
@@ -1,71 +0,0 @@
|
|
1
|
-
== Appendix B: Terminology ==
|
2
|
-
|
3
|
-
[[application_root]]
|
4
|
-
=== Application root ===
|
5
|
-
The root directory of an application that's served by Phusion Passenger.
|
6
|
-
|
7
|
-
In case of Ruby on Rails applications, this is the directory that contains
|
8
|
-
'Rakefile', 'app/', 'config/', 'public/', etc. In other words, the directory
|
9
|
-
pointed to by `RAILS_ROOT`. For example, take the following directory structure:
|
10
|
-
|
11
|
-
-----------------------------------------
|
12
|
-
/apps/foo/ <------ This is the Rails application's application root!
|
13
|
-
|
|
14
|
-
+- app/
|
15
|
-
| |
|
16
|
-
| +- controllers/
|
17
|
-
| |
|
18
|
-
| +- models/
|
19
|
-
| |
|
20
|
-
| +- views/
|
21
|
-
|
|
22
|
-
+- config/
|
23
|
-
| |
|
24
|
-
| +- environment.rb
|
25
|
-
| |
|
26
|
-
| +- ...
|
27
|
-
|
|
28
|
-
+- public/
|
29
|
-
| |
|
30
|
-
| +- ...
|
31
|
-
|
|
32
|
-
+- ...
|
33
|
-
-----------------------------------------
|
34
|
-
|
35
|
-
In case of Rack applications, this is the directory that contains 'config.ru'.
|
36
|
-
For example, take the following directory structure:
|
37
|
-
|
38
|
-
-----------------------------------------
|
39
|
-
/apps/bar/ <----- This is the Rack application's application root!
|
40
|
-
|
|
41
|
-
+- public/
|
42
|
-
| |
|
43
|
-
| +- ...
|
44
|
-
|
|
45
|
-
+- config.ru
|
46
|
-
|
|
47
|
-
+- ...
|
48
|
-
-----------------------------------------
|
49
|
-
|
50
|
-
In case of Python (WSGI) applications, this is the directory that contains
|
51
|
-
'passenger_wsgi.py'. For example, take the following directory structure:
|
52
|
-
|
53
|
-
-----------------------------------------
|
54
|
-
/apps/baz/ <----- This is the WSGI application's application root!
|
55
|
-
|
|
56
|
-
+- public/
|
57
|
-
| |
|
58
|
-
| +- ...
|
59
|
-
|
|
60
|
-
+- passenger_wsgi.py
|
61
|
-
|
|
62
|
-
+- ...
|
63
|
-
-----------------------------------------
|
64
|
-
|
65
|
-
[[idle_process]]
|
66
|
-
=== Idle process ===
|
67
|
-
An "idle process" refers to a process that hasn't processed any requests for a while.
|
68
|
-
|
69
|
-
[[inactive_process]]
|
70
|
-
=== Inactive process ===
|
71
|
-
An "inactive process" refers to a process that's current not processing any requests. An idle process is always inactive, but an inactive process is not always considered idle.
|
@@ -1,36 +0,0 @@
|
|
1
|
-
[[spawning_methods_explained]]
|
2
|
-
== Appendix C: Spawning methods explained
|
3
|
-
|
4
|
-
This documentation has moved. Please visit https://www.phusionpassenger.com/library/indepth/spawn_methods/
|
5
|
-
|
6
|
-
=== The most straightforward and traditional way: direct spawning
|
7
|
-
|
8
|
-
This documentation has moved. Please visit https://www.phusionpassenger.com/library/indepth/spawn_methods/
|
9
|
-
|
10
|
-
=== The smart spawning method
|
11
|
-
|
12
|
-
This documentation has moved. Please visit https://www.phusionpassenger.com/library/indepth/spawn_methods/
|
13
|
-
|
14
|
-
==== How it works
|
15
|
-
|
16
|
-
This documentation has moved. Please visit https://www.phusionpassenger.com/library/indepth/spawn_methods/
|
17
|
-
|
18
|
-
==== Summary of benefits
|
19
|
-
|
20
|
-
This documentation has moved. Please visit https://www.phusionpassenger.com/library/indepth/spawn_methods/
|
21
|
-
|
22
|
-
=== Smart spawning caveat #1: unintentional file descriptor sharing
|
23
|
-
|
24
|
-
This documentation has moved. Please visit https://www.phusionpassenger.com/library/indepth/spawn_methods/
|
25
|
-
|
26
|
-
==== Example 1: Memcached connection sharing (harmful)
|
27
|
-
|
28
|
-
This documentation has moved. Please visit https://www.phusionpassenger.com/library/indepth/spawn_methods/
|
29
|
-
|
30
|
-
==== Example 2: Log file sharing (not harmful)
|
31
|
-
|
32
|
-
This documentation has moved. Please visit https://www.phusionpassenger.com/library/indepth/spawn_methods/
|
33
|
-
|
34
|
-
=== Smart spawning caveat #2: the need to revive threads
|
35
|
-
|
36
|
-
This documentation has moved. Please visit https://www.phusionpassenger.com/library/indepth/spawn_methods/
|
@@ -1,37 +0,0 @@
|
|
1
|
-
== Deploying a web application: the basics
|
2
|
-
|
3
|
-
=== Anatomy of a web application
|
4
|
-
|
5
|
-
==== Ruby
|
6
|
-
|
7
|
-
==== Python
|
8
|
-
|
9
|
-
===== Django
|
10
|
-
|
11
|
-
For Django >= 1.4, `passenger_wsgi.py` should contain the following. Replace "mysite" with your application's actual module name.
|
12
|
-
|
13
|
-
--------------------------------------------------------------------
|
14
|
-
from mysite.wsgi import application
|
15
|
-
--------------------------------------------------------------------
|
16
|
-
|
17
|
-
For earlier Django versions, it should contain:
|
18
|
-
|
19
|
-
--------------------------------------------------------------------
|
20
|
-
import os
|
21
|
-
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
|
22
|
-
|
23
|
-
from django.core.wsgi import get_wsgi_application
|
24
|
-
application = get_wsgi_application()
|
25
|
-
--------------------------------------------------------------------
|
26
|
-
|
27
|
-
==== Node.js
|
28
|
-
|
29
|
-
=== Attaching to a virtual host's root URI
|
30
|
-
|
31
|
-
=== Attaching to a sub-URI
|
32
|
-
|
33
|
-
==== How to fix broken images/CSS/JavaScript URIs in sub-URI deployments
|
34
|
-
|
35
|
-
=== Restarting the web application
|
36
|
-
|
37
|
-
=== Inspecting the status
|
@@ -1 +0,0 @@
|
|
1
|
-
**This feature is only available in link:https://www.phusionpassenger.com/enterprise[Phusion Passenger Enterprise]. It was introduced in version {version}. link:https://www.phusionpassenger.com/download[Buy Phusion Passenger Enterprise here.]**
|