passenger 2.2.7 → 2.2.8
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.
- data/NEWS +40 -0
- data/Rakefile +1 -1
- data/bin/passenger-install-apache2-module +1 -0
- data/bin/passenger-install-nginx-module +2 -0
- data/doc/Architectural overview.html +173 -138
- data/doc/Security of user switching support.html +147 -109
- data/doc/Users guide Apache.html +4 -43
- data/doc/Users guide Nginx.html +4 -43
- data/doc/cxxapi/Bucket_8h-source.html +1 -1
- data/doc/cxxapi/Configuration_8h-source.html +1 -1
- data/doc/cxxapi/DirectoryMapper_8h-source.html +1 -1
- data/doc/cxxapi/Hooks_8h-source.html +1 -1
- data/doc/cxxapi/annotated.html +1 -1
- data/doc/cxxapi/classHooks-members.html +1 -1
- data/doc/cxxapi/classHooks.html +1 -1
- data/doc/cxxapi/classPassenger_1_1DirectoryMapper-members.html +1 -1
- data/doc/cxxapi/classPassenger_1_1DirectoryMapper.html +1 -1
- data/doc/cxxapi/classes.html +1 -1
- data/doc/cxxapi/definitions_8h-source.html +1 -1
- data/doc/cxxapi/files.html +1 -1
- data/doc/cxxapi/functions.html +1 -1
- data/doc/cxxapi/functions_func.html +1 -1
- data/doc/cxxapi/graph_legend.html +1 -1
- data/doc/cxxapi/group__Configuration.html +1 -1
- data/doc/cxxapi/group__Core.html +1 -1
- data/doc/cxxapi/group__Hooks.html +1 -1
- data/doc/cxxapi/group__Support.html +1 -1
- data/doc/cxxapi/main.html +1 -1
- data/doc/cxxapi/modules.html +1 -1
- data/doc/rdoc/classes/GC.html +4 -4
- data/doc/rdoc/classes/PhusionPassenger.html +2 -1
- data/doc/rdoc/classes/PhusionPassenger/AbstractInstaller.html +8 -8
- data/doc/rdoc/classes/PhusionPassenger/AbstractRequestHandler.html +26 -26
- data/doc/rdoc/classes/PhusionPassenger/AbstractServer.html +98 -98
- data/doc/rdoc/classes/PhusionPassenger/AbstractServerCollection.html +61 -61
- data/doc/rdoc/classes/PhusionPassenger/AppInitError.html +4 -4
- data/doc/rdoc/classes/PhusionPassenger/Application.html +14 -14
- data/doc/rdoc/classes/PhusionPassenger/ConsoleTextTemplate.html +12 -12
- data/doc/rdoc/classes/PhusionPassenger/FrameworkInitError.html +4 -4
- data/doc/rdoc/classes/PhusionPassenger/HTMLTemplate.html +12 -12
- data/doc/rdoc/classes/PhusionPassenger/InitializationError.html +5 -5
- data/doc/rdoc/classes/PhusionPassenger/MessageChannel.html +42 -42
- data/doc/rdoc/classes/PhusionPassenger/Rack/ApplicationSpawner.html +33 -33
- data/doc/rdoc/classes/PhusionPassenger/Rack/RequestHandler.html +59 -59
- data/doc/rdoc/classes/PhusionPassenger/Railz/ApplicationSpawner.html +3 -3
- data/doc/rdoc/classes/PhusionPassenger/Railz/FrameworkSpawner.html +7 -7
- data/doc/rdoc/classes/PhusionPassenger/SpawnManager.html +23 -23
- data/doc/rdoc/classes/PhusionPassenger/UnknownError.html +4 -4
- data/doc/rdoc/classes/PhusionPassenger/Utils.html +2 -0
- data/doc/rdoc/classes/PhusionPassenger/Utils/PseudoIO.html +16 -16
- data/doc/rdoc/classes/PhusionPassenger/VersionNotFound.html +4 -4
- data/doc/rdoc/classes/PlatformInfo.html +1 -1
- data/doc/rdoc/classes/Signal.html +23 -15
- data/doc/rdoc/created.rid +1 -1
- data/doc/rdoc/files/DEVELOPERS_TXT.html +1 -1
- data/doc/rdoc/files/README.html +1 -1
- data/doc/rdoc/files/ext/phusion_passenger/native_support_c.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/abstract_installer_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/abstract_request_handler_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/abstract_server_collection_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/abstract_server_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/admin_tools/control_process_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/admin_tools_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/application_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/console_text_template_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/constants_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/dependencies_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/events_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/exceptions_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/html_template_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/message_channel_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/packaging_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/platform_info_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/rack/application_spawner_rb.html +2 -2
- data/doc/rdoc/files/lib/phusion_passenger/rack/request_handler_rb.html +2 -2
- data/doc/rdoc/files/lib/phusion_passenger/railz/application_spawner_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/railz/cgi_fixed_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/railz/framework_spawner_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/railz/request_handler_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/simple_benchmarking_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/spawn_manager_rb.html +1 -1
- data/doc/rdoc/files/lib/phusion_passenger/utils_rb.html +9 -9
- data/doc/rdoc/files/lib/phusion_passenger/wsgi/application_spawner_rb.html +1 -1
- data/doc/rdoc/files/misc/rake/extensions_rb.html +1 -1
- data/doc/rdoc/fr_class_index.html +2 -0
- data/doc/rdoc/fr_file_index.html +1 -0
- data/doc/rdoc/fr_method_index.html +79 -72
- data/ext/apache2/Hooks.cpp +4 -2
- data/ext/common/StandardApplicationPool.h +4 -2
- data/ext/common/Version.h +1 -1
- data/ext/nginx/Configuration.c +1 -1
- data/ext/oxt/system_calls.cpp +11 -0
- data/ext/oxt/system_calls.hpp +2 -1
- data/ext/oxt/thread.hpp +97 -1
- data/lib/phusion_passenger/constants.rb +1 -1
- data/lib/phusion_passenger/dependencies.rb +32 -0
- data/lib/phusion_passenger/platform_info.rb +1 -1
- data/lib/phusion_passenger/rack/application_spawner.rb +4 -4
- data/lib/phusion_passenger/rack/request_handler.rb +2 -5
- data/lib/phusion_passenger/railz/application_spawner.rb +13 -2
- data/lib/phusion_passenger/utils.rb +12 -4
- data/{vendor/rack-1.0.0-git/lib/rack → lib/phusion_passenger/utils}/rewindable_input.rb +19 -3
- data/test/ApplicationPoolTest.cpp +1 -1
- metadata +13 -59
- data/vendor/README +0 -13
- data/vendor/README_FOR_PACKAGERS +0 -1
- data/vendor/rack-1.0.0-git/COPYING +0 -18
- data/vendor/rack-1.0.0-git/KNOWN-ISSUES +0 -18
- data/vendor/rack-1.0.0-git/README +0 -353
- data/vendor/rack-1.0.0-git/Rakefile +0 -164
- data/vendor/rack-1.0.0-git/lib/rack.rb +0 -90
- data/vendor/rack-1.0.0-git/lib/rack/adapter/camping.rb +0 -22
- data/vendor/rack-1.0.0-git/lib/rack/auth/abstract/handler.rb +0 -37
- data/vendor/rack-1.0.0-git/lib/rack/auth/abstract/request.rb +0 -37
- data/vendor/rack-1.0.0-git/lib/rack/auth/basic.rb +0 -58
- data/vendor/rack-1.0.0-git/lib/rack/auth/digest/md5.rb +0 -124
- data/vendor/rack-1.0.0-git/lib/rack/auth/digest/nonce.rb +0 -51
- data/vendor/rack-1.0.0-git/lib/rack/auth/digest/params.rb +0 -55
- data/vendor/rack-1.0.0-git/lib/rack/auth/digest/request.rb +0 -40
- data/vendor/rack-1.0.0-git/lib/rack/auth/openid.rb +0 -487
- data/vendor/rack-1.0.0-git/lib/rack/builder.rb +0 -63
- data/vendor/rack-1.0.0-git/lib/rack/cascade.rb +0 -41
- data/vendor/rack-1.0.0-git/lib/rack/chunked.rb +0 -49
- data/vendor/rack-1.0.0-git/lib/rack/commonlogger.rb +0 -52
- data/vendor/rack-1.0.0-git/lib/rack/conditionalget.rb +0 -47
- data/vendor/rack-1.0.0-git/lib/rack/content_length.rb +0 -29
- data/vendor/rack-1.0.0-git/lib/rack/content_type.rb +0 -23
- data/vendor/rack-1.0.0-git/lib/rack/deflater.rb +0 -96
- data/vendor/rack-1.0.0-git/lib/rack/directory.rb +0 -153
- data/vendor/rack-1.0.0-git/lib/rack/file.rb +0 -88
- data/vendor/rack-1.0.0-git/lib/rack/handler.rb +0 -69
- data/vendor/rack-1.0.0-git/lib/rack/handler/cgi.rb +0 -61
- data/vendor/rack-1.0.0-git/lib/rack/handler/evented_mongrel.rb +0 -8
- data/vendor/rack-1.0.0-git/lib/rack/handler/fastcgi.rb +0 -88
- data/vendor/rack-1.0.0-git/lib/rack/handler/lsws.rb +0 -55
- data/vendor/rack-1.0.0-git/lib/rack/handler/mongrel.rb +0 -84
- data/vendor/rack-1.0.0-git/lib/rack/handler/scgi.rb +0 -59
- data/vendor/rack-1.0.0-git/lib/rack/handler/swiftiplied_mongrel.rb +0 -8
- data/vendor/rack-1.0.0-git/lib/rack/handler/thin.rb +0 -18
- data/vendor/rack-1.0.0-git/lib/rack/handler/webrick.rb +0 -67
- data/vendor/rack-1.0.0-git/lib/rack/head.rb +0 -19
- data/vendor/rack-1.0.0-git/lib/rack/lint.rb +0 -537
- data/vendor/rack-1.0.0-git/lib/rack/lobster.rb +0 -65
- data/vendor/rack-1.0.0-git/lib/rack/lock.rb +0 -16
- data/vendor/rack-1.0.0-git/lib/rack/methodoverride.rb +0 -27
- data/vendor/rack-1.0.0-git/lib/rack/mime.rb +0 -204
- data/vendor/rack-1.0.0-git/lib/rack/mock.rb +0 -184
- data/vendor/rack-1.0.0-git/lib/rack/recursive.rb +0 -57
- data/vendor/rack-1.0.0-git/lib/rack/reloader.rb +0 -106
- data/vendor/rack-1.0.0-git/lib/rack/request.rb +0 -248
- data/vendor/rack-1.0.0-git/lib/rack/response.rb +0 -183
- data/vendor/rack-1.0.0-git/lib/rack/session/abstract/id.rb +0 -142
- data/vendor/rack-1.0.0-git/lib/rack/session/cookie.rb +0 -91
- data/vendor/rack-1.0.0-git/lib/rack/session/memcache.rb +0 -109
- data/vendor/rack-1.0.0-git/lib/rack/session/pool.rb +0 -100
- data/vendor/rack-1.0.0-git/lib/rack/showexceptions.rb +0 -349
- data/vendor/rack-1.0.0-git/lib/rack/showstatus.rb +0 -106
- data/vendor/rack-1.0.0-git/lib/rack/static.rb +0 -38
- data/vendor/rack-1.0.0-git/lib/rack/urlmap.rb +0 -55
- data/vendor/rack-1.0.0-git/lib/rack/utils.rb +0 -522
data/doc/Users guide Apache.html
CHANGED
@@ -3425,20 +3425,7 @@ Passenger is creating a new worker process. Phusion Passenger provides the API
|
|
3425
3425
|
call <tt>PhusionPassenger.on_event(:starting_worker_process)</tt> to do so. So you
|
3426
3426
|
could insert the following code in your <em>environment.rb</em>:</p></div>
|
3427
3427
|
<div class="listingblock">
|
3428
|
-
<div class="content"
|
3429
|
-
by Lorenzo Bettini
|
3430
|
-
http://www.lorenzobettini.it
|
3431
|
-
http://www.gnu.org/software/src-highlite -->
|
3432
|
-
<pre><tt><span style="font-weight: bold"><span style="color: #0000FF">if</span></span> <span style="font-weight: bold"><span style="color: #0000FF">defined</span></span><span style="color: #990000">?(</span>PhusionPassenger<span style="color: #990000">)</span>
|
3433
|
-
PhusionPassenger<span style="color: #990000">.</span>on_event<span style="color: #990000">(:</span>starting_worker_process<span style="color: #990000">)</span> <span style="font-weight: bold"><span style="color: #0000FF">do</span></span> <span style="color: #990000">|</span>forked<span style="color: #990000">|</span>
|
3434
|
-
<span style="font-weight: bold"><span style="color: #0000FF">if</span></span> forked
|
3435
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in smart spawning mode.</span></span>
|
3436
|
-
<span style="color: #990000">...</span> code to reestablish socket connections here <span style="color: #990000">...</span>
|
3437
|
-
<span style="font-weight: bold"><span style="color: #0000FF">else</span></span>
|
3438
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in conservative spawning mode. We don't need to do anything.</span></span>
|
3439
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
3440
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
3441
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span></tt></pre></div></div>
|
3428
|
+
<div class="content"></div></div>
|
3442
3429
|
<div class="paragraph"><p>Note that Phusion Passenger automatically reestablishes the connection to the
|
3443
3430
|
database upon creating a new worker process, which is why you normally do not
|
3444
3431
|
encounter any database issues when using smart spawning mode.</p></div>
|
@@ -3518,20 +3505,7 @@ Memcached is forced to handle this as an error.</p></div>
|
|
3518
3505
|
<div class="paragraph"><p>Worker process 2 now has its own, separate communication channel with Memcached.
|
3519
3506
|
The code in <em>environment.rb</em> looks like this:</p></div>
|
3520
3507
|
<div class="listingblock">
|
3521
|
-
<div class="content"
|
3522
|
-
by Lorenzo Bettini
|
3523
|
-
http://www.lorenzobettini.it
|
3524
|
-
http://www.gnu.org/software/src-highlite -->
|
3525
|
-
<pre><tt><span style="font-weight: bold"><span style="color: #0000FF">if</span></span> <span style="font-weight: bold"><span style="color: #0000FF">defined</span></span><span style="color: #990000">?(</span>PhusionPassenger<span style="color: #990000">)</span>
|
3526
|
-
PhusionPassenger<span style="color: #990000">.</span>on_event<span style="color: #990000">(:</span>starting_worker_process<span style="color: #990000">)</span> <span style="font-weight: bold"><span style="color: #0000FF">do</span></span> <span style="color: #990000">|</span>forked<span style="color: #990000">|</span>
|
3527
|
-
<span style="font-weight: bold"><span style="color: #0000FF">if</span></span> forked
|
3528
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in smart spawning mode.</span></span>
|
3529
|
-
reestablish_connection_to_memcached
|
3530
|
-
<span style="font-weight: bold"><span style="color: #0000FF">else</span></span>
|
3531
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in conservative spawning mode. We don't need to do anything.</span></span>
|
3532
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
3533
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
3534
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span></tt></pre></div></div>
|
3508
|
+
<div class="content"></div></div>
|
3535
3509
|
<h4 id="_example_2_log_file_sharing_not_harmful">12.3.2. Example 2: Log file sharing (not harmful)</h4>
|
3536
3510
|
<div class="paragraph"><p>There are also cases in which unintential file descriptor sharing is not harmful.
|
3537
3511
|
One such case is log file file descriptor sharing. Even if two processes write
|
@@ -3548,20 +3522,7 @@ then those threads will no longer be running in newly created worker process.
|
|
3548
3522
|
You need to revive them when a new worker process is created. Use the
|
3549
3523
|
<tt>:starting_worker_process</tt> event that Phusion Passenger provides, like this:</p></div>
|
3550
3524
|
<div class="listingblock">
|
3551
|
-
<div class="content"
|
3552
|
-
by Lorenzo Bettini
|
3553
|
-
http://www.lorenzobettini.it
|
3554
|
-
http://www.gnu.org/software/src-highlite -->
|
3555
|
-
<pre><tt><span style="font-weight: bold"><span style="color: #0000FF">if</span></span> <span style="font-weight: bold"><span style="color: #0000FF">defined</span></span><span style="color: #990000">?(</span>PhusionPassenger<span style="color: #990000">)</span>
|
3556
|
-
PhusionPassenger<span style="color: #990000">.</span>on_event<span style="color: #990000">(:</span>starting_worker_process<span style="color: #990000">)</span> <span style="font-weight: bold"><span style="color: #0000FF">do</span></span> <span style="color: #990000">|</span>forked<span style="color: #990000">|</span>
|
3557
|
-
<span style="font-weight: bold"><span style="color: #0000FF">if</span></span> forked
|
3558
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in smart spawning mode.</span></span>
|
3559
|
-
<span style="color: #990000">...</span> code to revive threads here <span style="color: #990000">...</span>
|
3560
|
-
<span style="font-weight: bold"><span style="color: #0000FF">else</span></span>
|
3561
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in conservative spawning mode. We don't need to do anything.</span></span>
|
3562
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
3563
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
3564
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span></tt></pre></div></div>
|
3525
|
+
<div class="content"></div></div>
|
3565
3526
|
<h3 id="_smart_spawning_gotcha_3_code_load_order">12.5. Smart spawning gotcha #3: code load order</h3>
|
3566
3527
|
<div class="paragraph"><p>This gotcha is only applicable to the <em>smart</em> spawn method, not the <em>smart-lv2</em>
|
3567
3528
|
spawn method.</p></div>
|
@@ -3581,7 +3542,7 @@ has no effect.</p></div>
|
|
3581
3542
|
</div>
|
3582
3543
|
<div id="footer">
|
3583
3544
|
<div id="footer-text">
|
3584
|
-
Last updated 2009-
|
3545
|
+
Last updated 2009-12-15 11:58:38 PDT
|
3585
3546
|
</div>
|
3586
3547
|
</div>
|
3587
3548
|
</body>
|
data/doc/Users guide Nginx.html
CHANGED
@@ -2103,20 +2103,7 @@ Passenger is creating a new worker process. Phusion Passenger provides the API
|
|
2103
2103
|
call <tt>PhusionPassenger.on_event(:starting_worker_process)</tt> to do so. So you
|
2104
2104
|
could insert the following code in your <em>environment.rb</em>:</p></div>
|
2105
2105
|
<div class="listingblock">
|
2106
|
-
<div class="content"
|
2107
|
-
by Lorenzo Bettini
|
2108
|
-
http://www.lorenzobettini.it
|
2109
|
-
http://www.gnu.org/software/src-highlite -->
|
2110
|
-
<pre><tt><span style="font-weight: bold"><span style="color: #0000FF">if</span></span> <span style="font-weight: bold"><span style="color: #0000FF">defined</span></span><span style="color: #990000">?(</span>PhusionPassenger<span style="color: #990000">)</span>
|
2111
|
-
PhusionPassenger<span style="color: #990000">.</span>on_event<span style="color: #990000">(:</span>starting_worker_process<span style="color: #990000">)</span> <span style="font-weight: bold"><span style="color: #0000FF">do</span></span> <span style="color: #990000">|</span>forked<span style="color: #990000">|</span>
|
2112
|
-
<span style="font-weight: bold"><span style="color: #0000FF">if</span></span> forked
|
2113
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in smart spawning mode.</span></span>
|
2114
|
-
<span style="color: #990000">...</span> code to reestablish socket connections here <span style="color: #990000">...</span>
|
2115
|
-
<span style="font-weight: bold"><span style="color: #0000FF">else</span></span>
|
2116
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in conservative spawning mode. We don't need to do anything.</span></span>
|
2117
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
2118
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
2119
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span></tt></pre></div></div>
|
2106
|
+
<div class="content"></div></div>
|
2120
2107
|
<div class="paragraph"><p>Note that Phusion Passenger automatically reestablishes the connection to the
|
2121
2108
|
database upon creating a new worker process, which is why you normally do not
|
2122
2109
|
encounter any database issues when using smart spawning mode.</p></div>
|
@@ -2196,20 +2183,7 @@ Memcached is forced to handle this as an error.</p></div>
|
|
2196
2183
|
<div class="paragraph"><p>Worker process 2 now has its own, separate communication channel with Memcached.
|
2197
2184
|
The code in <em>environment.rb</em> looks like this:</p></div>
|
2198
2185
|
<div class="listingblock">
|
2199
|
-
<div class="content"
|
2200
|
-
by Lorenzo Bettini
|
2201
|
-
http://www.lorenzobettini.it
|
2202
|
-
http://www.gnu.org/software/src-highlite -->
|
2203
|
-
<pre><tt><span style="font-weight: bold"><span style="color: #0000FF">if</span></span> <span style="font-weight: bold"><span style="color: #0000FF">defined</span></span><span style="color: #990000">?(</span>PhusionPassenger<span style="color: #990000">)</span>
|
2204
|
-
PhusionPassenger<span style="color: #990000">.</span>on_event<span style="color: #990000">(:</span>starting_worker_process<span style="color: #990000">)</span> <span style="font-weight: bold"><span style="color: #0000FF">do</span></span> <span style="color: #990000">|</span>forked<span style="color: #990000">|</span>
|
2205
|
-
<span style="font-weight: bold"><span style="color: #0000FF">if</span></span> forked
|
2206
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in smart spawning mode.</span></span>
|
2207
|
-
reestablish_connection_to_memcached
|
2208
|
-
<span style="font-weight: bold"><span style="color: #0000FF">else</span></span>
|
2209
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in conservative spawning mode. We don't need to do anything.</span></span>
|
2210
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
2211
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
2212
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span></tt></pre></div></div>
|
2186
|
+
<div class="content"></div></div>
|
2213
2187
|
<h4 id="_example_2_log_file_sharing_not_harmful">10.3.2. Example 2: Log file sharing (not harmful)</h4>
|
2214
2188
|
<div class="paragraph"><p>There are also cases in which unintential file descriptor sharing is not harmful.
|
2215
2189
|
One such case is log file file descriptor sharing. Even if two processes write
|
@@ -2226,20 +2200,7 @@ then those threads will no longer be running in newly created worker process.
|
|
2226
2200
|
You need to revive them when a new worker process is created. Use the
|
2227
2201
|
<tt>:starting_worker_process</tt> event that Phusion Passenger provides, like this:</p></div>
|
2228
2202
|
<div class="listingblock">
|
2229
|
-
<div class="content"
|
2230
|
-
by Lorenzo Bettini
|
2231
|
-
http://www.lorenzobettini.it
|
2232
|
-
http://www.gnu.org/software/src-highlite -->
|
2233
|
-
<pre><tt><span style="font-weight: bold"><span style="color: #0000FF">if</span></span> <span style="font-weight: bold"><span style="color: #0000FF">defined</span></span><span style="color: #990000">?(</span>PhusionPassenger<span style="color: #990000">)</span>
|
2234
|
-
PhusionPassenger<span style="color: #990000">.</span>on_event<span style="color: #990000">(:</span>starting_worker_process<span style="color: #990000">)</span> <span style="font-weight: bold"><span style="color: #0000FF">do</span></span> <span style="color: #990000">|</span>forked<span style="color: #990000">|</span>
|
2235
|
-
<span style="font-weight: bold"><span style="color: #0000FF">if</span></span> forked
|
2236
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in smart spawning mode.</span></span>
|
2237
|
-
<span style="color: #990000">...</span> code to revive threads here <span style="color: #990000">...</span>
|
2238
|
-
<span style="font-weight: bold"><span style="color: #0000FF">else</span></span>
|
2239
|
-
<span style="font-style: italic"><span style="color: #9A1900"># We're in conservative spawning mode. We don't need to do anything.</span></span>
|
2240
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
2241
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span>
|
2242
|
-
<span style="font-weight: bold"><span style="color: #0000FF">end</span></span></tt></pre></div></div>
|
2203
|
+
<div class="content"></div></div>
|
2243
2204
|
<h3 id="_smart_spawning_gotcha_3_code_load_order">10.5. Smart spawning gotcha #3: code load order</h3>
|
2244
2205
|
<div class="paragraph"><p>This gotcha is only applicable to the <em>smart</em> spawn method, not the <em>smart-lv2</em>
|
2245
2206
|
spawn method.</p></div>
|
@@ -2259,7 +2220,7 @@ has no effect.</p></div>
|
|
2259
2220
|
</div>
|
2260
2221
|
<div id="footer">
|
2261
2222
|
<div id="footer-text">
|
2262
|
-
Last updated 2009-
|
2223
|
+
Last updated 2009-12-15 11:58:38 PDT
|
2263
2224
|
</div>
|
2264
2225
|
</div>
|
2265
2226
|
</body>
|
@@ -107,7 +107,7 @@
|
|
107
107
|
<a name="l00086"></a>00086
|
108
108
|
<a name="l00087"></a>00087 <span class="preprocessor">#endif </span><span class="comment">/* _PASSENGER_BUCKET_H_ */</span>
|
109
109
|
</pre></div></div>
|
110
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
110
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
111
111
|
<a href="http://www.doxygen.org/index.html">
|
112
112
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
113
113
|
</body>
|
@@ -425,7 +425,7 @@
|
|
425
425
|
<a name="l00404"></a>00404
|
426
426
|
<a name="l00405"></a>00405 <span class="preprocessor">#endif </span><span class="comment">/* _PASSENGER_CONFIGURATION_H_ */</span>
|
427
427
|
</pre></div></div>
|
428
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
428
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
429
429
|
<a href="http://www.doxygen.org/index.html">
|
430
430
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
431
431
|
</body>
|
@@ -316,7 +316,7 @@
|
|
316
316
|
<a name="l00295"></a>00295 <span class="preprocessor">#endif </span><span class="comment">/* _PASSENGER_DIRECTORY_MAPPER_H_ */</span>
|
317
317
|
<a name="l00296"></a>00296
|
318
318
|
</pre></div></div>
|
319
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
319
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
320
320
|
<a href="http://www.doxygen.org/index.html">
|
321
321
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
322
322
|
</body>
|
@@ -65,7 +65,7 @@
|
|
65
65
|
<a name="l00044"></a>00044 <span class="preprocessor"></span>
|
66
66
|
<a name="l00045"></a>00045 <span class="preprocessor">#endif </span><span class="comment">/* _PASSENGER_HOOKS_H_ */</span>
|
67
67
|
</pre></div></div>
|
68
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
68
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
69
69
|
<a href="http://www.doxygen.org/index.html">
|
70
70
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
71
71
|
</body>
|
data/doc/cxxapi/annotated.html
CHANGED
@@ -27,7 +27,7 @@
|
|
27
27
|
<tr><td class="indexkey"><a class="el" href="classHooks.html">Hooks</a></td><td class="indexvalue">Apache hook functions, wrapped in a class </td></tr>
|
28
28
|
</table>
|
29
29
|
</div>
|
30
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
30
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
31
31
|
<a href="http://www.doxygen.org/index.html">
|
32
32
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
33
33
|
</body>
|
@@ -28,7 +28,7 @@
|
|
28
28
|
<tr class="memlist"><td><a class="el" href="classHooks.html#d6cca64be8a9075b4b92efdb4d9020a5">startBlockingModAutoIndex</a>(request_rec *r)</td><td><a class="el" href="classHooks.html">Hooks</a></td><td><code> [inline]</code></td></tr>
|
29
29
|
<tr class="memlist"><td><a class="el" href="classHooks.html#e3091c57c95b2f8269f566099802f0ec">startBlockingModDir</a>(request_rec *r)</td><td><a class="el" href="classHooks.html">Hooks</a></td><td><code> [inline]</code></td></tr>
|
30
30
|
</table></div>
|
31
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
31
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
32
32
|
<a href="http://www.doxygen.org/index.html">
|
33
33
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
34
34
|
</body>
|
data/doc/cxxapi/classHooks.html
CHANGED
@@ -148,7 +148,7 @@ So in <a class="el" href="classHooks.html#e3091c57c95b2f8269f566099802f0ec" titl
|
|
148
148
|
<hr>The documentation for this class was generated from the following file:<ul>
|
149
149
|
<li>Hooks.cpp</ul>
|
150
150
|
</div>
|
151
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
151
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
152
152
|
<a href="http://www.doxygen.org/index.html">
|
153
153
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
154
154
|
</body>
|
@@ -30,7 +30,7 @@
|
|
30
30
|
<tr class="memlist"><td><a class="el" href="classPassenger_1_1DirectoryMapper.html#f5091e3cef3878e160e5d3b2181d82fb">getEnvironment</a>()</td><td><a class="el" href="classPassenger_1_1DirectoryMapper.html">Passenger::DirectoryMapper</a></td><td><code> [inline]</code></td></tr>
|
31
31
|
<tr class="memlist"><td><a class="el" href="classPassenger_1_1DirectoryMapper.html#ef969f27622fb215990a870076648aa1">getPublicDirectory</a>()</td><td><a class="el" href="classPassenger_1_1DirectoryMapper.html">Passenger::DirectoryMapper</a></td><td><code> [inline]</code></td></tr>
|
32
32
|
</table></div>
|
33
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
33
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
34
34
|
<a href="http://www.doxygen.org/index.html">
|
35
35
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
36
36
|
</body>
|
@@ -251,7 +251,7 @@ Returns an empty string if the document root of the HTTP request cannot be deter
|
|
251
251
|
<hr>The documentation for this class was generated from the following file:<ul>
|
252
252
|
<li><a class="el" href="DirectoryMapper_8h-source.html">DirectoryMapper.h</a></ul>
|
253
253
|
</div>
|
254
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
254
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
255
255
|
<a href="http://www.doxygen.org/index.html">
|
256
256
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
257
257
|
</body>
|
data/doc/cxxapi/classes.html
CHANGED
@@ -28,7 +28,7 @@
|
|
28
28
|
</td><td><a class="el" href="classPassenger_1_1DirectoryMapper.html">DirectoryMapper</a> (Passenger) </td><td><a name="letter_H"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah"> H </div></td></tr></table>
|
29
29
|
</td><td><a class="el" href="classHooks.html">Hooks</a> </td></tr></table><p><div class="qindex"><a class="qindex" href="#letter_D">D</a> | <a class="qindex" href="#letter_H">H</a></div><p>
|
30
30
|
</div>
|
31
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
31
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
32
32
|
<a href="http://www.doxygen.org/index.html">
|
33
33
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
34
34
|
</body>
|
@@ -25,7 +25,7 @@
|
|
25
25
|
<a name="l00004"></a>00004 <span class="comment">@defgroup Support Apache-independent support classes and function</span>
|
26
26
|
<a name="l00005"></a>00005 <span class="comment">*/</span>
|
27
27
|
</pre></div></div>
|
28
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
28
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
29
29
|
<a href="http://www.doxygen.org/index.html">
|
30
30
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
31
31
|
</body>
|
data/doc/cxxapi/files.html
CHANGED
@@ -29,7 +29,7 @@
|
|
29
29
|
<tr><td class="indexkey"><b>Hooks.h</b> <a href="Hooks_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
|
30
30
|
</table>
|
31
31
|
</div>
|
32
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
32
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
33
33
|
<a href="http://www.doxygen.org/index.html">
|
34
34
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
35
35
|
</body>
|
data/doc/cxxapi/functions.html
CHANGED
@@ -53,7 +53,7 @@ Here is a list of all documented class members with links to the class documenta
|
|
53
53
|
: <a class="el" href="classHooks.html#e3091c57c95b2f8269f566099802f0ec">Hooks</a>
|
54
54
|
</ul>
|
55
55
|
</div>
|
56
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
56
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
57
57
|
<a href="http://www.doxygen.org/index.html">
|
58
58
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
59
59
|
</body>
|
@@ -53,7 +53,7 @@
|
|
53
53
|
: <a class="el" href="classHooks.html#e3091c57c95b2f8269f566099802f0ec">Hooks</a>
|
54
54
|
</ul>
|
55
55
|
</div>
|
56
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
56
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
57
57
|
<a href="http://www.doxygen.org/index.html">
|
58
58
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
59
59
|
</body>
|
@@ -79,7 +79,7 @@ A purple dashed arrow is used if a class is contained or used by another class.
|
|
79
79
|
A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance. </li>
|
80
80
|
</ul>
|
81
81
|
</div>
|
82
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
82
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
83
83
|
<a href="http://www.doxygen.org/index.html">
|
84
84
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
85
85
|
</body>
|
@@ -204,7 +204,7 @@ Apache module commands array.
|
|
204
204
|
</div>
|
205
205
|
</div><p>
|
206
206
|
</div>
|
207
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
207
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
208
208
|
<a href="http://www.doxygen.org/index.html">
|
209
209
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
210
210
|
</body>
|
data/doc/cxxapi/group__Core.html
CHANGED
@@ -41,7 +41,7 @@ Collaboration diagram for Core Apache-related classes and functions:</div>
|
|
41
41
|
|
42
42
|
</table>
|
43
43
|
</div>
|
44
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
44
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
45
45
|
<a href="http://www.doxygen.org/index.html">
|
46
46
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
47
47
|
</body>
|
@@ -32,7 +32,7 @@ Collaboration diagram for Apache hooks:</div>
|
|
32
32
|
<tr><td></td></tr>
|
33
33
|
</table>
|
34
34
|
</div>
|
35
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
35
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
36
36
|
<a href="http://www.doxygen.org/index.html">
|
37
37
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
38
38
|
</body>
|
@@ -20,7 +20,7 @@
|
|
20
20
|
<tr><td></td></tr>
|
21
21
|
</table>
|
22
22
|
</div>
|
23
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
23
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
24
24
|
<a href="http://www.doxygen.org/index.html">
|
25
25
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
26
26
|
</body>
|
data/doc/cxxapi/main.html
CHANGED
@@ -19,7 +19,7 @@
|
|
19
19
|
<h1>Passenger Documentation</h1>
|
20
20
|
<p>
|
21
21
|
</div>
|
22
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
22
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
23
23
|
<a href="http://www.doxygen.org/index.html">
|
24
24
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
25
25
|
</body>
|
data/doc/cxxapi/modules.html
CHANGED
@@ -25,7 +25,7 @@
|
|
25
25
|
<li><a class="el" href="group__Support.html">Apache-independent support classes and function</a>
|
26
26
|
</ul>
|
27
27
|
</div>
|
28
|
-
<hr size="1"><address style="text-align: right;"><small>Generated on
|
28
|
+
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Dec 15 17:41:30 2009 for Passenger by
|
29
29
|
<a href="http://www.doxygen.org/index.html">
|
30
30
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
|
31
31
|
</body>
|
data/doc/rdoc/classes/GC.html
CHANGED
@@ -97,10 +97,10 @@ copy-on-write friendly.
|
|
97
97
|
<p class="source-link">[ <a href="javascript:toggleSource('M000033_source')" id="l_M000033_source">show source</a> ]</p>
|
98
98
|
<div id="M000033_source" class="dyn-source">
|
99
99
|
<pre>
|
100
|
-
<span class="ruby-comment cmt"># File lib/phusion_passenger/utils.rb, line
|
101
|
-
|
102
|
-
|
103
|
-
|
100
|
+
<span class="ruby-comment cmt"># File lib/phusion_passenger/utils.rb, line 607</span>
|
101
|
+
607: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">copy_on_write_friendly?</span>
|
102
|
+
608: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span>
|
103
|
+
609: <span class="ruby-keyword kw">end</span>
|
104
104
|
</pre>
|
105
105
|
</div>
|
106
106
|
</div>
|
@@ -80,6 +80,7 @@
|
|
80
80
|
<a href="../files/lib/phusion_passenger/railz/cgi_fixed_rb.html">lib/phusion_passenger/railz/cgi_fixed.rb</a>
|
81
81
|
<a href="../files/lib/phusion_passenger/railz/framework_spawner_rb.html">lib/phusion_passenger/railz/framework_spawner.rb</a>
|
82
82
|
<a href="../files/lib/phusion_passenger/railz/request_handler_rb.html">lib/phusion_passenger/railz/request_handler.rb</a>
|
83
|
+
<a href="../files/lib/phusion_passenger/utils/rewindable_input_rb.html">lib/phusion_passenger/utils/rewindable_input.rb</a>
|
83
84
|
<a href="../files/lib/phusion_passenger/wsgi/application_spawner_rb.html">lib/phusion_passenger/wsgi/application_spawner.rb</a>
|
84
85
|
<a href="../files/ext/phusion_passenger/native_support_c.html">ext/phusion_passenger/native_support.c</a>
|
85
86
|
</td>
|
@@ -134,7 +135,7 @@ Class <a href="PhusionPassenger/VersionNotFound.html" class="link">PhusionPassen
|
|
134
135
|
<tr valign='top'>
|
135
136
|
<td class="attr-name">VERSION_STRING</td>
|
136
137
|
<td>=</td>
|
137
|
-
<td class="attr-value">'2.2.
|
138
|
+
<td class="attr-value">'2.2.8'</td>
|
138
139
|
</tr>
|
139
140
|
<tr valign='top'>
|
140
141
|
<td> </td>
|
@@ -85,8 +85,8 @@ passenger-install-apache2-module and passenger-install-nginx-module.
|
|
85
85
|
|
86
86
|
<div class="sectiontitle">Methods</div>
|
87
87
|
<ul>
|
88
|
-
<li><a href="#
|
89
|
-
<li><a href="#
|
88
|
+
<li><a href="#M000155">new</a></li>
|
89
|
+
<li><a href="#M000156">start</a></li>
|
90
90
|
</ul>
|
91
91
|
|
92
92
|
|
@@ -110,11 +110,11 @@ passenger-install-apache2-module and passenger-install-nginx-module.
|
|
110
110
|
<div class="sectiontitle">Public Class methods</div>
|
111
111
|
<div class="method">
|
112
112
|
<div class="title">
|
113
|
-
<a name="
|
113
|
+
<a name="M000155"></a><b>new</b>(options = {})
|
114
114
|
</div>
|
115
115
|
<div class="sourcecode">
|
116
|
-
<p class="source-link">[ <a href="javascript:toggleSource('
|
117
|
-
<div id="
|
116
|
+
<p class="source-link">[ <a href="javascript:toggleSource('M000155_source')" id="l_M000155_source">show source</a> ]</p>
|
117
|
+
<div id="M000155_source" class="dyn-source">
|
118
118
|
<pre>
|
119
119
|
<span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_installer.rb, line 36</span>
|
120
120
|
36: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">options</span> = {})
|
@@ -129,11 +129,11 @@ passenger-install-apache2-module and passenger-install-nginx-module.
|
|
129
129
|
<div class="sectiontitle">Public Instance methods</div>
|
130
130
|
<div class="method">
|
131
131
|
<div class="title">
|
132
|
-
<a name="
|
132
|
+
<a name="M000156"></a><b>start</b>()
|
133
133
|
</div>
|
134
134
|
<div class="sourcecode">
|
135
|
-
<p class="source-link">[ <a href="javascript:toggleSource('
|
136
|
-
<div id="
|
135
|
+
<p class="source-link">[ <a href="javascript:toggleSource('M000156_source')" id="l_M000156_source">show source</a> ]</p>
|
136
|
+
<div id="M000156_source" class="dyn-source">
|
137
137
|
<pre>
|
138
138
|
<span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_installer.rb, line 42</span>
|
139
139
|
42: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">start</span>
|
@@ -161,11 +161,11 @@ and sends it to the request handler.
|
|
161
161
|
|
162
162
|
<div class="sectiontitle">Methods</div>
|
163
163
|
<ul>
|
164
|
-
<li><a href="#
|
165
|
-
<li><a href="#
|
166
|
-
<li><a href="#
|
167
|
-
<li><a href="#
|
168
|
-
<li><a href="#
|
164
|
+
<li><a href="#M000142">cleanup</a></li>
|
165
|
+
<li><a href="#M000144">main_loop</a></li>
|
166
|
+
<li><a href="#M000143">main_loop_running?</a></li>
|
167
|
+
<li><a href="#M000141">new</a></li>
|
168
|
+
<li><a href="#M000145">start_main_loop_thread</a></li>
|
169
169
|
</ul>
|
170
170
|
|
171
171
|
<div class="sectiontitle">Included Modules</div>
|
@@ -268,7 +268,7 @@ exceptions.
|
|
268
268
|
<td class='attr-name'>socket_name</td>
|
269
269
|
<td class='attr-desc'>
|
270
270
|
The name of the socket on which the request handler accepts <a
|
271
|
-
href="AbstractRequestHandler.html#
|
271
|
+
href="AbstractRequestHandler.html#M000141">new</a> connections. At this
|
272
272
|
moment, this value is always the filename of a Unix domain socket.
|
273
273
|
|
274
274
|
<p>
|
@@ -292,11 +292,11 @@ always ‘unix’, which indicates a Unix domain socket.
|
|
292
292
|
<div class="sectiontitle">Public Class methods</div>
|
293
293
|
<div class="method">
|
294
294
|
<div class="title">
|
295
|
-
<a name="
|
295
|
+
<a name="M000141"></a><b>new</b>(owner_pipe, options = {})
|
296
296
|
</div>
|
297
297
|
<div class="description">
|
298
298
|
<p>
|
299
|
-
Create a <a href="AbstractRequestHandler.html#
|
299
|
+
Create a <a href="AbstractRequestHandler.html#M000141">new</a>
|
300
300
|
RequestHandler with the given owner pipe. <tt>owner_pipe</tt> must be the
|
301
301
|
readable part of a pipe <a href="../IO.html">IO</a> object.
|
302
302
|
</p>
|
@@ -310,8 +310,8 @@ Additionally, the following options may be given:
|
|
310
310
|
</ul>
|
311
311
|
</div>
|
312
312
|
<div class="sourcecode">
|
313
|
-
<p class="source-link">[ <a href="javascript:toggleSource('
|
314
|
-
<div id="
|
313
|
+
<p class="source-link">[ <a href="javascript:toggleSource('M000141_source')" id="l_M000141_source">show source</a> ]</p>
|
314
|
+
<div id="M000141_source" class="dyn-source">
|
315
315
|
<pre>
|
316
316
|
<span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_request_handler.rb, line 137</span>
|
317
317
|
137: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">owner_pipe</span>, <span class="ruby-identifier">options</span> = {})
|
@@ -338,7 +338,7 @@ Additionally, the following options may be given:
|
|
338
338
|
<div class="sectiontitle">Public Instance methods</div>
|
339
339
|
<div class="method">
|
340
340
|
<div class="title">
|
341
|
-
<a name="
|
341
|
+
<a name="M000142"></a><b>cleanup</b>()
|
342
342
|
</div>
|
343
343
|
<div class="description">
|
344
344
|
<p>
|
@@ -346,19 +346,19 @@ Clean up temporary stuff created by the request handler.
|
|
346
346
|
</p>
|
347
347
|
<p>
|
348
348
|
If the main loop was started by <a
|
349
|
-
href="AbstractRequestHandler.html#
|
349
|
+
href="AbstractRequestHandler.html#M000144">#main_loop</a>, then this method
|
350
350
|
may only be called after the main loop has exited.
|
351
351
|
</p>
|
352
352
|
<p>
|
353
353
|
If the main loop was started by <a
|
354
|
-
href="AbstractRequestHandler.html#
|
354
|
+
href="AbstractRequestHandler.html#M000145">#start_main_loop_thread</a>,
|
355
355
|
then this method may be called at any time, and it will stop the main loop
|
356
356
|
thread.
|
357
357
|
</p>
|
358
358
|
</div>
|
359
359
|
<div class="sourcecode">
|
360
|
-
<p class="source-link">[ <a href="javascript:toggleSource('
|
361
|
-
<div id="
|
360
|
+
<p class="source-link">[ <a href="javascript:toggleSource('M000142_source')" id="l_M000142_source">show source</a> ]</p>
|
361
|
+
<div id="M000142_source" class="dyn-source">
|
362
362
|
<pre>
|
363
363
|
<span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_request_handler.rb, line 162</span>
|
364
364
|
162: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cleanup</span>
|
@@ -378,7 +378,7 @@ thread.
|
|
378
378
|
</div>
|
379
379
|
<div class="method">
|
380
380
|
<div class="title">
|
381
|
-
<a name="
|
381
|
+
<a name="M000144"></a><b>main_loop</b>()
|
382
382
|
</div>
|
383
383
|
<div class="description">
|
384
384
|
<p>
|
@@ -386,8 +386,8 @@ Enter the request handler‘s main loop.
|
|
386
386
|
</p>
|
387
387
|
</div>
|
388
388
|
<div class="sourcecode">
|
389
|
-
<p class="source-link">[ <a href="javascript:toggleSource('
|
390
|
-
<div id="
|
389
|
+
<p class="source-link">[ <a href="javascript:toggleSource('M000144_source')" id="l_M000144_source">show source</a> ]</p>
|
390
|
+
<div id="M000144_source" class="dyn-source">
|
391
391
|
<pre>
|
392
392
|
<span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_request_handler.rb, line 180</span>
|
393
393
|
180: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">main_loop</span>
|
@@ -459,7 +459,7 @@ Enter the request handler‘s main loop.
|
|
459
459
|
</div>
|
460
460
|
<div class="method">
|
461
461
|
<div class="title">
|
462
|
-
<a name="
|
462
|
+
<a name="M000143"></a><b>main_loop_running?</b>()
|
463
463
|
</div>
|
464
464
|
<div class="description">
|
465
465
|
<p>
|
@@ -467,8 +467,8 @@ Check whether the main loop‘s currently running.
|
|
467
467
|
</p>
|
468
468
|
</div>
|
469
469
|
<div class="sourcecode">
|
470
|
-
<p class="source-link">[ <a href="javascript:toggleSource('
|
471
|
-
<div id="
|
470
|
+
<p class="source-link">[ <a href="javascript:toggleSource('M000143_source')" id="l_M000143_source">show source</a> ]</p>
|
471
|
+
<div id="M000143_source" class="dyn-source">
|
472
472
|
<pre>
|
473
473
|
<span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_request_handler.rb, line 175</span>
|
474
474
|
175: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">main_loop_running?</span>
|
@@ -480,18 +480,18 @@ Check whether the main loop‘s currently running.
|
|
480
480
|
</div>
|
481
481
|
<div class="method">
|
482
482
|
<div class="title">
|
483
|
-
<a name="
|
483
|
+
<a name="M000145"></a><b>start_main_loop_thread</b>()
|
484
484
|
</div>
|
485
485
|
<div class="description">
|
486
486
|
<p>
|
487
487
|
Start the main loop in a <a
|
488
|
-
href="AbstractRequestHandler.html#
|
489
|
-
be stopped by <a href="AbstractRequestHandler.html#
|
488
|
+
href="AbstractRequestHandler.html#M000141">new</a> thread. This thread will
|
489
|
+
be stopped by <a href="AbstractRequestHandler.html#M000142">#cleanup</a>.
|
490
490
|
</p>
|
491
491
|
</div>
|
492
492
|
<div class="sourcecode">
|
493
|
-
<p class="source-link">[ <a href="javascript:toggleSource('
|
494
|
-
<div id="
|
493
|
+
<p class="source-link">[ <a href="javascript:toggleSource('M000145_source')" id="l_M000145_source">show source</a> ]</p>
|
494
|
+
<div id="M000145_source" class="dyn-source">
|
495
495
|
<pre>
|
496
496
|
<span class="ruby-comment cmt"># File lib/phusion_passenger/abstract_request_handler.rb, line 245</span>
|
497
497
|
245: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">start_main_loop_thread</span>
|