passenger 4.0.48 → 4.0.49
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 +8 -8
- checksums.yaml.gz.asc +7 -7
- data.tar.gz.asc +7 -7
- data/.editorconfig +36 -2
- data/.travis.yml +1 -1
- data/CHANGELOG +16 -0
- data/Rakefile +0 -1
- data/build/apache2.rb +4 -4
- data/build/common_library.rb +18 -18
- data/build/cplusplus_support.rb +2 -2
- data/build/documentation.rb +1 -1
- data/build/integration_tests.rb +12 -4
- data/build/misc.rb +12 -7
- data/build/packaging.rb +14 -14
- data/build/preprocessor.rb +10 -10
- data/build/rake_extensions.rb +11 -11
- data/build/ruby_extension.rb +2 -2
- data/dev/ci/inituidgid +24 -0
- data/dev/ci/run_jenkins.sh +57 -0
- data/dev/ci/run_rpm_tests.sh +77 -0
- data/dev/{run_travis.sh → ci/run_travis.sh} +60 -4
- data/doc/Users guide Nginx.txt +2 -2
- data/doc/users_guide_snippets/environment_variables.txt +0 -2
- data/doc/users_guide_snippets/tips.txt +20 -1
- data/ext/apache2/Bucket.cpp +18 -18
- data/ext/apache2/Bucket.h +4 -4
- data/ext/apache2/Configuration.cpp +7 -7
- data/ext/apache2/Configuration.hpp +43 -43
- data/ext/apache2/DirectoryMapper.h +5 -5
- data/ext/apache2/Hooks.cpp +142 -142
- data/ext/apache2/MergeDirConfig.cpp +40 -40
- data/ext/common/Account.h +17 -17
- data/ext/common/AccountsDatabase.h +9 -9
- data/ext/common/AgentsStarter.cpp +2 -2
- data/ext/common/AgentsStarter.h +40 -40
- data/ext/common/ApplicationPool2/Common.h +10 -6
- data/ext/common/ApplicationPool2/ComponentInfo.h +2 -2
- data/ext/common/ApplicationPool2/DirectSpawner.h +17 -17
- data/ext/common/ApplicationPool2/DummySpawner.h +5 -5
- data/ext/common/ApplicationPool2/Group.h +54 -38
- data/ext/common/ApplicationPool2/Implementation.cpp +76 -49
- data/ext/common/ApplicationPool2/Options.h +98 -91
- data/ext/common/ApplicationPool2/Pool.h +70 -69
- data/ext/common/ApplicationPool2/Process.h +21 -21
- data/ext/common/ApplicationPool2/Session.h +11 -11
- data/ext/common/ApplicationPool2/SmartSpawner.h +60 -60
- data/ext/common/ApplicationPool2/Socket.h +19 -19
- data/ext/common/ApplicationPool2/Spawner.h +64 -72
- data/ext/common/ApplicationPool2/SpawnerFactory.h +4 -4
- data/ext/common/ApplicationPool2/SuperGroup.h +41 -41
- data/ext/common/BackgroundEventLoop.cpp +1 -1
- data/ext/common/BackgroundEventLoop.h +2 -2
- data/ext/common/Constants.h +1 -1
- data/ext/common/EventedBufferedInput.h +5 -5
- data/ext/common/EventedClient.h +51 -51
- data/ext/common/EventedMessageServer.h +39 -39
- data/ext/common/EventedServer.h +32 -32
- data/ext/common/Exceptions.h +23 -23
- data/ext/common/FileDescriptor.h +18 -18
- data/ext/common/Logging.cpp +1 -1
- data/ext/common/MessageClient.h +27 -27
- data/ext/common/MessageReadersWriters.h +79 -79
- data/ext/common/MessageServer.h +59 -59
- data/ext/common/RandomGenerator.h +12 -12
- data/ext/common/ResourceLocator.h +8 -8
- data/ext/common/SafeLibev.h +54 -25
- data/ext/common/ServerInstanceDir.h +31 -31
- data/ext/common/StaticString.h +50 -48
- data/ext/common/Utils.cpp +73 -78
- data/ext/common/Utils.h +6 -6
- data/ext/common/Utils/Base64.cpp +3 -3
- data/ext/common/Utils/Base64.h +7 -7
- data/ext/common/Utils/BlockingQueue.h +9 -9
- data/ext/common/Utils/BufferedIO.h +17 -17
- data/ext/common/Utils/CachedFileStat.hpp +16 -16
- data/ext/common/Utils/Dechunker.h +25 -25
- data/ext/common/Utils/FileChangeChecker.h +10 -10
- data/ext/common/Utils/MemZeroGuard.h +5 -5
- data/ext/common/Utils/MemoryBarrier.h +1 -1
- data/ext/common/Utils/MessageIO.h +61 -61
- data/ext/common/Utils/ProcessMetricsCollector.h +40 -40
- data/ext/common/Utils/ScopeGuard.h +7 -7
- data/ext/common/Utils/SpeedMeter.h +1 -1
- data/ext/common/Utils/StrIntUtils.cpp +13 -13
- data/ext/common/Utils/StrIntUtils.h +3 -3
- data/ext/common/Utils/StringScanning.h +5 -5
- data/ext/common/Utils/SystemMetricsCollector.h +2 -2
- data/ext/common/Utils/SystemTime.h +10 -10
- data/ext/common/Utils/Template.h +2 -2
- data/ext/common/Utils/Timer.h +6 -6
- data/ext/common/Utils/VariantMap.h +29 -29
- data/ext/common/agents/Base.cpp +19 -19
- data/ext/common/agents/HelperAgent/AgentOptions.h +1 -1
- data/ext/common/agents/HelperAgent/FileBackedPipe.h +6 -6
- data/ext/common/agents/HelperAgent/Main.cpp +44 -43
- data/ext/common/agents/HelperAgent/RequestHandler.cpp +4 -4
- data/ext/common/agents/HelperAgent/RequestHandler.h +29 -28
- data/ext/common/agents/HelperAgent/ScgiRequestParser.h +56 -50
- data/ext/common/agents/LoggingAgent/AdminController.h +8 -8
- data/ext/common/agents/LoggingAgent/DataStoreId.h +17 -17
- data/ext/common/agents/LoggingAgent/FilterSupport.h +167 -167
- data/ext/common/agents/LoggingAgent/LoggingServer.h +122 -122
- data/ext/common/agents/LoggingAgent/Main.cpp +7 -7
- data/ext/common/agents/LoggingAgent/RemoteSender.h +54 -54
- data/ext/common/agents/SpawnPreparer.cpp +4 -4
- data/ext/common/agents/TempDirToucher.c +2 -2
- data/ext/common/agents/Watchdog/AgentWatcher.cpp +47 -47
- data/ext/common/agents/Watchdog/HelperAgentWatcher.cpp +7 -7
- data/ext/common/agents/Watchdog/LoggingAgentWatcher.cpp +7 -7
- data/ext/common/agents/Watchdog/Main.cpp +22 -22
- data/ext/common/agents/Watchdog/ServerInstanceDirToucher.cpp +9 -9
- data/ext/libeio/eio.c +1 -1
- data/ext/nginx/Configuration.c +30 -30
- data/ext/nginx/Configuration.h +1 -1
- data/ext/nginx/ContentHandler.c +54 -54
- data/ext/nginx/ContentHandler.h +3 -3
- data/ext/nginx/StaticContentHandler.c +2 -2
- data/ext/nginx/ngx_http_passenger_module.c +21 -21
- data/ext/oxt/detail/backtrace_enabled.hpp +1 -1
- data/ext/oxt/detail/context.hpp +1 -1
- data/ext/oxt/detail/spin_lock_darwin.hpp +4 -4
- data/ext/oxt/detail/spin_lock_gcc_x86.hpp +3 -3
- data/ext/oxt/detail/spin_lock_pthreads.hpp +4 -4
- data/ext/oxt/detail/tracable_exception_disabled.hpp +1 -1
- data/ext/oxt/dynamic_thread_group.hpp +18 -18
- data/ext/oxt/implementation.cpp +9 -8
- data/ext/oxt/macros.hpp +2 -2
- data/ext/oxt/system_calls.cpp +11 -11
- data/ext/oxt/system_calls.hpp +13 -13
- data/ext/oxt/thread.hpp +22 -14
- data/ext/ruby/passenger_native_support.c +55 -55
- data/lib/phusion_passenger.rb +24 -24
- data/lib/phusion_passenger/common_library.rb +2 -0
- data/lib/phusion_passenger/loader_shared_helpers.rb +18 -18
- data/lib/phusion_passenger/packaging.rb +9 -4
- data/lib/phusion_passenger/platform_info/apache.rb +45 -31
- data/lib/phusion_passenger/platform_info/compiler.rb +11 -11
- data/lib/phusion_passenger/rack/thread_handler_extension.rb +1 -1
- data/lib/phusion_passenger/request_handler/thread_handler.rb +8 -8
- data/lib/phusion_passenger/standalone/app_finder.rb +16 -16
- data/lib/phusion_passenger/standalone/command.rb +22 -22
- data/packaging/rpm/LICENSE.txt +19 -0
- data/packaging/rpm/Makefile +13 -0
- data/packaging/rpm/README.md +41 -0
- data/packaging/rpm/Vagrantfile +38 -0
- data/{rpm/Vagrantfile → packaging/rpm/Vagrantfile.centos} +0 -0
- data/packaging/rpm/build +170 -0
- data/packaging/rpm/create_project +41 -0
- data/packaging/rpm/git_update +88 -0
- data/packaging/rpm/image/Dockerfile +37 -0
- data/packaging/rpm/image/Gemfile +3 -0
- data/packaging/rpm/image/Gemfile.lock +12 -0
- data/packaging/rpm/image/RPM-GPG-KEY-amazon-ga +19 -0
- data/packaging/rpm/image/amazon2014-i386.cfg +96 -0
- data/packaging/rpm/image/amazon2014-x86_64.cfg +96 -0
- data/packaging/rpm/image/site-defaults.cfg +168 -0
- data/packaging/rpm/internal/build_tasks.rb +238 -0
- data/packaging/rpm/internal/dummygpg +11 -0
- data/packaging/rpm/internal/exec_build +42 -0
- data/packaging/rpm/internal/get_distro_arch +14 -0
- data/packaging/rpm/internal/get_distro_id +10 -0
- data/packaging/rpm/internal/git_update +27 -0
- data/packaging/rpm/internal/inituidgid +17 -0
- data/packaging/rpm/internal/my_init +344 -0
- data/packaging/rpm/internal/python27 +3 -0
- data/packaging/rpm/internal/repo_update +46 -0
- data/packaging/rpm/internal/setuser +26 -0
- data/packaging/rpm/internal/tracking_helper +40 -0
- data/packaging/rpm/jenkins_release +99 -0
- data/packaging/rpm/lib/build_tasks_support.rb +402 -0
- data/packaging/rpm/lib/preprocessor.rb +341 -0
- data/packaging/rpm/nginx_spec/404.html +119 -0
- data/packaging/rpm/nginx_spec/50x.html +119 -0
- data/packaging/rpm/nginx_spec/index.html +116 -0
- data/packaging/rpm/nginx_spec/nginx-auto-cc-gcc.patch +13 -0
- data/packaging/rpm/nginx_spec/nginx-logo.png +0 -0
- data/packaging/rpm/nginx_spec/nginx-upgrade +13 -0
- data/packaging/rpm/nginx_spec/nginx-upgrade.8 +151 -0
- data/packaging/rpm/nginx_spec/nginx.conf +131 -0
- data/packaging/rpm/nginx_spec/nginx.init +144 -0
- data/packaging/rpm/nginx_spec/nginx.logrotate +13 -0
- data/packaging/rpm/nginx_spec/nginx.service +15 -0
- data/packaging/rpm/nginx_spec/nginx.spec.template +559 -0
- data/packaging/rpm/nginx_spec/nginx.sysconfig +4 -0
- data/packaging/rpm/nginx_spec/passenger.conf +9 -0
- data/packaging/rpm/nginx_spec/poweredby.png +0 -0
- data/{rpm → packaging/rpm/passenger_spec}/apache-passenger.conf.in +0 -0
- data/{rpm → packaging/rpm/passenger_spec}/config.json +0 -0
- data/{rpm → packaging/rpm/passenger_spec}/passenger.logrotate +0 -0
- data/{rpm → packaging/rpm/passenger_spec}/passenger.spec.template +58 -31
- data/{rpm → packaging/rpm/passenger_spec}/passenger_dynamic_thread_group.patch +0 -0
- data/{rpm → packaging/rpm/passenger_spec}/passenger_tests_default_config_example.patch +0 -0
- data/{rpm → packaging/rpm/passenger_spec}/rubygem-passenger-4.0.18-GLIBC_HAVE_LONG_LONG.patch +0 -0
- data/{rpm → packaging/rpm/passenger_spec}/rubygem-passenger-4.0.18-gcc47-include-sys_types.patch +0 -0
- data/packaging/rpm/repo_update +114 -0
- data/packaging/rpm/setup-system +60 -0
- data/packaging/rpm/shell +10 -0
- data/resources/templates/standalone/config.erb +3 -1
- data/test/config.json.rpm-automation +1 -1
- data/test/cxx/ApplicationPool2/DirectSpawnerTest.cpp +11 -11
- data/test/cxx/ApplicationPool2/OptionsTest.cpp +5 -5
- data/test/cxx/ApplicationPool2/PoolTest.cpp +129 -89
- data/test/cxx/ApplicationPool2/ProcessTest.cpp +15 -15
- data/test/cxx/ApplicationPool2/SmartSpawnerTest.cpp +22 -22
- data/test/cxx/ApplicationPool2/SpawnerTestCases.cpp +11 -11
- data/test/cxx/ScgiRequestParserTest.cpp +75 -61
- data/test/cxx/UtilsTest.cpp +86 -85
- data/test/gdbinit.example +3 -0
- data/test/integration_tests/nginx_tests.rb +3 -3
- data/test/integration_tests/source_packaging_test.rb +3 -1
- data/test/stub/nginx/nginx.conf.erb +8 -1
- data/test/support/nginx_controller.rb +7 -7
- metadata +62 -17
- metadata.gz.asc +7 -7
- data/build/rpm.rb +0 -128
- data/dev/rpmtool +0 -21
- data/dev/test_rpm_packaging.sh +0 -28
- data/rpm/get_distro_id.py +0 -4
@@ -0,0 +1,119 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
2
|
+
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
4
|
+
<head>
|
5
|
+
<title>The page is temporarily unavailable</title>
|
6
|
+
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
7
|
+
<style type="text/css">
|
8
|
+
/*<![CDATA[*/
|
9
|
+
body {
|
10
|
+
background-color: #fff;
|
11
|
+
color: #000;
|
12
|
+
font-size: 0.9em;
|
13
|
+
font-family: sans-serif,helvetica;
|
14
|
+
margin: 0;
|
15
|
+
padding: 0;
|
16
|
+
}
|
17
|
+
:link {
|
18
|
+
color: #c00;
|
19
|
+
}
|
20
|
+
:visited {
|
21
|
+
color: #c00;
|
22
|
+
}
|
23
|
+
a:hover {
|
24
|
+
color: #f50;
|
25
|
+
}
|
26
|
+
h1 {
|
27
|
+
text-align: center;
|
28
|
+
margin: 0;
|
29
|
+
padding: 0.6em 2em 0.4em;
|
30
|
+
background-color: #294172;
|
31
|
+
color: #fff;
|
32
|
+
font-weight: normal;
|
33
|
+
font-size: 1.75em;
|
34
|
+
border-bottom: 2px solid #000;
|
35
|
+
}
|
36
|
+
h1 strong {
|
37
|
+
font-weight: bold;
|
38
|
+
font-size: 1.5em;
|
39
|
+
}
|
40
|
+
h2 {
|
41
|
+
text-align: center;
|
42
|
+
background-color: #3C6EB4;
|
43
|
+
font-size: 1.1em;
|
44
|
+
font-weight: bold;
|
45
|
+
color: #fff;
|
46
|
+
margin: 0;
|
47
|
+
padding: 0.5em;
|
48
|
+
border-bottom: 2px solid #294172;
|
49
|
+
}
|
50
|
+
h3 {
|
51
|
+
text-align: center;
|
52
|
+
background-color: #ff0000;
|
53
|
+
padding: 0.5em;
|
54
|
+
color: #fff;
|
55
|
+
}
|
56
|
+
hr {
|
57
|
+
display: none;
|
58
|
+
}
|
59
|
+
.content {
|
60
|
+
padding: 1em 5em;
|
61
|
+
}
|
62
|
+
.alert {
|
63
|
+
border: 2px solid #000;
|
64
|
+
}
|
65
|
+
|
66
|
+
img {
|
67
|
+
border: 2px solid #fff;
|
68
|
+
padding: 2px;
|
69
|
+
margin: 2px;
|
70
|
+
}
|
71
|
+
a:hover img {
|
72
|
+
border: 2px solid #294172;
|
73
|
+
}
|
74
|
+
.logos {
|
75
|
+
margin: 1em;
|
76
|
+
text-align: center;
|
77
|
+
}
|
78
|
+
/*]]>*/
|
79
|
+
</style>
|
80
|
+
</head>
|
81
|
+
|
82
|
+
<body>
|
83
|
+
<h1><strong>nginx error!</strong></h1>
|
84
|
+
|
85
|
+
<div class="content">
|
86
|
+
|
87
|
+
<h3>The page you are looking for is temporarily unavailable. Please try again later.</h3>
|
88
|
+
|
89
|
+
<div class="alert">
|
90
|
+
<h2>Website Administrator</h2>
|
91
|
+
<div class="content">
|
92
|
+
<p>Something has triggered an error on your
|
93
|
+
website. This is the default error page for
|
94
|
+
<strong>nginx</strong> that is distributed with
|
95
|
+
Fedora. It is located
|
96
|
+
<tt>/usr/share/nginx/html/50x.html</tt></p>
|
97
|
+
|
98
|
+
<p>You should customize this error page for your own
|
99
|
+
site or edit the <tt>error_page</tt> directive in
|
100
|
+
the <strong>nginx</strong> configuration file
|
101
|
+
<tt>/etc/nginx/nginx.conf</tt>.</p>
|
102
|
+
|
103
|
+
</div>
|
104
|
+
</div>
|
105
|
+
|
106
|
+
<div class="logos">
|
107
|
+
<a href="http://nginx.net/"><img
|
108
|
+
src="nginx-logo.png"
|
109
|
+
alt="[ Powered by nginx ]"
|
110
|
+
width="121" height="32" /></a>
|
111
|
+
|
112
|
+
<a href="http://fedoraproject.org/"><img
|
113
|
+
src="poweredby.png"
|
114
|
+
alt="[ Powered by Fedora ]"
|
115
|
+
width="88" height="31" /></a>
|
116
|
+
</div>
|
117
|
+
</div>
|
118
|
+
</body>
|
119
|
+
</html>
|
@@ -0,0 +1,116 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
2
|
+
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
4
|
+
<head>
|
5
|
+
<title>Test Page for the Nginx HTTP Server on Fedora</title>
|
6
|
+
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
7
|
+
<style type="text/css">
|
8
|
+
/*<![CDATA[*/
|
9
|
+
body {
|
10
|
+
background-color: #fff;
|
11
|
+
color: #000;
|
12
|
+
font-size: 0.9em;
|
13
|
+
font-family: sans-serif,helvetica;
|
14
|
+
margin: 0;
|
15
|
+
padding: 0;
|
16
|
+
}
|
17
|
+
:link {
|
18
|
+
color: #c00;
|
19
|
+
}
|
20
|
+
:visited {
|
21
|
+
color: #c00;
|
22
|
+
}
|
23
|
+
a:hover {
|
24
|
+
color: #f50;
|
25
|
+
}
|
26
|
+
h1 {
|
27
|
+
text-align: center;
|
28
|
+
margin: 0;
|
29
|
+
padding: 0.6em 2em 0.4em;
|
30
|
+
background-color: #294172;
|
31
|
+
color: #fff;
|
32
|
+
font-weight: normal;
|
33
|
+
font-size: 1.75em;
|
34
|
+
border-bottom: 2px solid #000;
|
35
|
+
}
|
36
|
+
h1 strong {
|
37
|
+
font-weight: bold;
|
38
|
+
font-size: 1.5em;
|
39
|
+
}
|
40
|
+
h2 {
|
41
|
+
text-align: center;
|
42
|
+
background-color: #3C6EB4;
|
43
|
+
font-size: 1.1em;
|
44
|
+
font-weight: bold;
|
45
|
+
color: #fff;
|
46
|
+
margin: 0;
|
47
|
+
padding: 0.5em;
|
48
|
+
border-bottom: 2px solid #294172;
|
49
|
+
}
|
50
|
+
hr {
|
51
|
+
display: none;
|
52
|
+
}
|
53
|
+
.content {
|
54
|
+
padding: 1em 5em;
|
55
|
+
}
|
56
|
+
.alert {
|
57
|
+
border: 2px solid #000;
|
58
|
+
}
|
59
|
+
|
60
|
+
img {
|
61
|
+
border: 2px solid #fff;
|
62
|
+
padding: 2px;
|
63
|
+
margin: 2px;
|
64
|
+
}
|
65
|
+
a:hover img {
|
66
|
+
border: 2px solid #294172;
|
67
|
+
}
|
68
|
+
.logos {
|
69
|
+
margin: 1em;
|
70
|
+
text-align: center;
|
71
|
+
}
|
72
|
+
/*]]>*/
|
73
|
+
</style>
|
74
|
+
</head>
|
75
|
+
|
76
|
+
<body>
|
77
|
+
<h1>Welcome to <strong>nginx</strong> on Fedora!</h1>
|
78
|
+
|
79
|
+
<div class="content">
|
80
|
+
<p>This page is used to test the proper operation of the
|
81
|
+
<strong>nginx</strong> HTTP server after it has been
|
82
|
+
installed. If you can read this page, it means that the
|
83
|
+
web server installed at this site is working
|
84
|
+
properly.</p>
|
85
|
+
|
86
|
+
<div class="alert">
|
87
|
+
<h2>Website Administrator</h2>
|
88
|
+
<div class="content">
|
89
|
+
<p>This is the default <tt>index.html</tt> page that
|
90
|
+
is distributed with <strong>nginx</strong> on
|
91
|
+
Fedora. It is located in
|
92
|
+
<tt>/usr/share/nginx/html</tt>.</p>
|
93
|
+
|
94
|
+
<p>You should now put your content in a location of
|
95
|
+
your choice and edit the <tt>root</tt> configuration
|
96
|
+
directive in the <strong>nginx</strong>
|
97
|
+
configuration file
|
98
|
+
<tt>/etc/nginx/nginx.conf</tt>.</p>
|
99
|
+
|
100
|
+
</div>
|
101
|
+
</div>
|
102
|
+
|
103
|
+
<div class="logos">
|
104
|
+
<a href="http://nginx.net/"><img
|
105
|
+
src="nginx-logo.png"
|
106
|
+
alt="[ Powered by nginx ]"
|
107
|
+
width="121" height="32" /></a>
|
108
|
+
|
109
|
+
<a href="http://fedoraproject.org/"><img
|
110
|
+
src="poweredby.png"
|
111
|
+
alt="[ Powered by Fedora ]"
|
112
|
+
width="88" height="31" /></a>
|
113
|
+
</div>
|
114
|
+
</div>
|
115
|
+
</body>
|
116
|
+
</html>
|
@@ -0,0 +1,13 @@
|
|
1
|
+
--- auto/cc/gcc.orig 2007-03-22 08:34:53.000000000 -0600
|
2
|
+
+++ auto/cc/gcc 2007-03-22 08:58:47.000000000 -0600
|
3
|
+
@@ -172,7 +172,9 @@
|
4
|
+
|
5
|
+
|
6
|
+
# stop on warning
|
7
|
+
-CFLAGS="$CFLAGS -Werror"
|
8
|
+
+# This combined with Fedora's FORTIFY_SOURCE=2 option causes it nginx
|
9
|
+
+# to not compile.
|
10
|
+
+#CFLAGS="$CFLAGS -Werror"
|
11
|
+
|
12
|
+
# debug
|
13
|
+
CFLAGS="$CFLAGS -g"
|
Binary file
|
@@ -0,0 +1,13 @@
|
|
1
|
+
#!/bin/sh
|
2
|
+
[ ! -f /run/nginx.pid ] && exit 1
|
3
|
+
echo "Start new nginx master..."
|
4
|
+
/bin/systemctl kill --signal=SIGUSR2 nginx.service
|
5
|
+
sleep 5
|
6
|
+
[ ! -f /run/nginx.pid.oldbin ] && sleep 5
|
7
|
+
if [ ! -f /run/nginx.pid.oldbin ]; then
|
8
|
+
echo "Failed to start new nginx master."
|
9
|
+
exit 1
|
10
|
+
fi
|
11
|
+
echo "Stop old nginx master gracefully..."
|
12
|
+
oldpid=`cat /run/nginx.pid.oldbin 2>/dev/null`
|
13
|
+
/bin/kill -s QUIT $oldpid 2>/dev/null
|
@@ -0,0 +1,151 @@
|
|
1
|
+
.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16)
|
2
|
+
.\"
|
3
|
+
.\" Standard preamble:
|
4
|
+
.\" ========================================================================
|
5
|
+
.de Sp \" Vertical space (when we can't use .PP)
|
6
|
+
.if t .sp .5v
|
7
|
+
.if n .sp
|
8
|
+
..
|
9
|
+
.de Vb \" Begin verbatim text
|
10
|
+
.ft CW
|
11
|
+
.nf
|
12
|
+
.ne \\$1
|
13
|
+
..
|
14
|
+
.de Ve \" End verbatim text
|
15
|
+
.ft R
|
16
|
+
.fi
|
17
|
+
..
|
18
|
+
.\" Set up some character translations and predefined strings. \*(-- will
|
19
|
+
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
20
|
+
.\" double quote, and \*(R" will give a right double quote. \*(C+ will
|
21
|
+
.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
|
22
|
+
.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
|
23
|
+
.\" nothing in troff, for use with C<>.
|
24
|
+
.tr \(*W-
|
25
|
+
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
26
|
+
.ie n \{\
|
27
|
+
. ds -- \(*W-
|
28
|
+
. ds PI pi
|
29
|
+
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
30
|
+
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
31
|
+
. ds L" ""
|
32
|
+
. ds R" ""
|
33
|
+
. ds C` ""
|
34
|
+
. ds C' ""
|
35
|
+
'br\}
|
36
|
+
.el\{\
|
37
|
+
. ds -- \|\(em\|
|
38
|
+
. ds PI \(*p
|
39
|
+
. ds L" ``
|
40
|
+
. ds R" ''
|
41
|
+
'br\}
|
42
|
+
.\"
|
43
|
+
.\" Escape single quotes in literal strings from groff's Unicode transform.
|
44
|
+
.ie \n(.g .ds Aq \(aq
|
45
|
+
.el .ds Aq '
|
46
|
+
.\"
|
47
|
+
.\" If the F register is turned on, we'll generate index entries on stderr for
|
48
|
+
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
|
49
|
+
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
50
|
+
.\" output yourself in some meaningful fashion.
|
51
|
+
.ie \nF \{\
|
52
|
+
. de IX
|
53
|
+
. tm Index:\\$1\t\\n%\t"\\$2"
|
54
|
+
..
|
55
|
+
. nr % 0
|
56
|
+
. rr F
|
57
|
+
.\}
|
58
|
+
.el \{\
|
59
|
+
. de IX
|
60
|
+
..
|
61
|
+
.\}
|
62
|
+
.\"
|
63
|
+
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
64
|
+
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
65
|
+
. \" fudge factors for nroff and troff
|
66
|
+
.if n \{\
|
67
|
+
. ds #H 0
|
68
|
+
. ds #V .8m
|
69
|
+
. ds #F .3m
|
70
|
+
. ds #[ \f1
|
71
|
+
. ds #] \fP
|
72
|
+
.\}
|
73
|
+
.if t \{\
|
74
|
+
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
75
|
+
. ds #V .6m
|
76
|
+
. ds #F 0
|
77
|
+
. ds #[ \&
|
78
|
+
. ds #] \&
|
79
|
+
.\}
|
80
|
+
. \" simple accents for nroff and troff
|
81
|
+
.if n \{\
|
82
|
+
. ds ' \&
|
83
|
+
. ds ` \&
|
84
|
+
. ds ^ \&
|
85
|
+
. ds , \&
|
86
|
+
. ds ~ ~
|
87
|
+
. ds /
|
88
|
+
.\}
|
89
|
+
.if t \{\
|
90
|
+
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
91
|
+
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
92
|
+
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
93
|
+
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
94
|
+
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
95
|
+
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
96
|
+
.\}
|
97
|
+
. \" troff and (daisy-wheel) nroff accents
|
98
|
+
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
99
|
+
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
100
|
+
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
101
|
+
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
102
|
+
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
103
|
+
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
104
|
+
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
105
|
+
.ds ae a\h'-(\w'a'u*4/10)'e
|
106
|
+
.ds Ae A\h'-(\w'A'u*4/10)'E
|
107
|
+
. \" corrections for vroff
|
108
|
+
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
109
|
+
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
110
|
+
. \" for low resolution devices (crt and lpr)
|
111
|
+
.if \n(.H>23 .if \n(.V>19 \
|
112
|
+
\{\
|
113
|
+
. ds : e
|
114
|
+
. ds 8 ss
|
115
|
+
. ds o a
|
116
|
+
. ds d- d\h'-1'\(ga
|
117
|
+
. ds D- D\h'-1'\(hy
|
118
|
+
. ds th \o'bp'
|
119
|
+
. ds Th \o'LP'
|
120
|
+
. ds ae ae
|
121
|
+
. ds Ae AE
|
122
|
+
.\}
|
123
|
+
.rm #[ #] #H #V #F C
|
124
|
+
.\" ========================================================================
|
125
|
+
.\"
|
126
|
+
.IX Title "NGINX-UPGRADE 8"
|
127
|
+
.TH NGINX-UPGRADE 8 "2012-10-28" " " " "
|
128
|
+
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
129
|
+
.\" way too many mistakes in technical documents.
|
130
|
+
.if n .ad l
|
131
|
+
.nh
|
132
|
+
.SH "NAME"
|
133
|
+
nginx\-upgrade \- tool to upgrade nginx without any downtime
|
134
|
+
.SH "SYNOPSIS"
|
135
|
+
.IX Header "SYNOPSIS"
|
136
|
+
\&\fInginx-upgrade\fR
|
137
|
+
.SH "DESCRIPTION"
|
138
|
+
.IX Header "DESCRIPTION"
|
139
|
+
This downstream shell script updates nginx without any downtime. After
|
140
|
+
upgrading nginx via the package manager, running this script will create
|
141
|
+
a new nginx master. This master takes over all new requests. The old
|
142
|
+
masters and workers are then gracefully shutdown without breaking any
|
143
|
+
existing connections.
|
144
|
+
.PP
|
145
|
+
For further information, see: <http://nginx.org/en/docs/control.html>
|
146
|
+
.SH "BUGS"
|
147
|
+
.IX Header "BUGS"
|
148
|
+
If you find any bugs, please send an email to the author.
|
149
|
+
.SH "AUTHOR"
|
150
|
+
.IX Header "AUTHOR"
|
151
|
+
Jamie Nguyen <jamielinux@fedoraproject.org>
|
@@ -0,0 +1,131 @@
|
|
1
|
+
# For more information on configuration, see:
|
2
|
+
# * Official English Documentation: http://nginx.org/en/docs/
|
3
|
+
# * Official Russian Documentation: http://nginx.org/ru/docs/
|
4
|
+
|
5
|
+
user nginx;
|
6
|
+
worker_processes 1;
|
7
|
+
|
8
|
+
error_log /var/log/nginx/error.log;
|
9
|
+
#error_log /var/log/nginx/error.log notice;
|
10
|
+
#error_log /var/log/nginx/error.log info;
|
11
|
+
|
12
|
+
pid /var/run/nginx.pid;
|
13
|
+
|
14
|
+
|
15
|
+
events {
|
16
|
+
worker_connections 1024;
|
17
|
+
}
|
18
|
+
|
19
|
+
|
20
|
+
http {
|
21
|
+
include /etc/nginx/mime.types;
|
22
|
+
default_type application/octet-stream;
|
23
|
+
|
24
|
+
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
25
|
+
'$status $body_bytes_sent "$http_referer" '
|
26
|
+
'"$http_user_agent" "$http_x_forwarded_for"';
|
27
|
+
|
28
|
+
access_log /var/log/nginx/access.log main;
|
29
|
+
|
30
|
+
sendfile on;
|
31
|
+
#tcp_nopush on;
|
32
|
+
|
33
|
+
#keepalive_timeout 0;
|
34
|
+
keepalive_timeout 65;
|
35
|
+
|
36
|
+
#gzip on;
|
37
|
+
|
38
|
+
# Load modular configuration files from the /etc/nginx/conf.d directory.
|
39
|
+
# See http://nginx.org/en/docs/ngx_core_module.html#include
|
40
|
+
# for more information.
|
41
|
+
include /etc/nginx/conf.d/*.conf;
|
42
|
+
|
43
|
+
server {
|
44
|
+
listen 80;
|
45
|
+
server_name localhost;
|
46
|
+
|
47
|
+
#charset koi8-r;
|
48
|
+
|
49
|
+
#access_log /var/log/nginx/host.access.log main;
|
50
|
+
|
51
|
+
location / {
|
52
|
+
root /usr/share/nginx/html;
|
53
|
+
index index.html index.htm;
|
54
|
+
}
|
55
|
+
|
56
|
+
# redirect server error pages to the static page /40x.html
|
57
|
+
#
|
58
|
+
error_page 404 /404.html;
|
59
|
+
location = /40x.html {
|
60
|
+
root /usr/share/nginx/html;
|
61
|
+
}
|
62
|
+
|
63
|
+
# redirect server error pages to the static page /50x.html
|
64
|
+
#
|
65
|
+
error_page 500 502 503 504 /50x.html;
|
66
|
+
location = /50x.html {
|
67
|
+
root /usr/share/nginx/html;
|
68
|
+
}
|
69
|
+
|
70
|
+
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
|
71
|
+
#
|
72
|
+
#location ~ \.php$ {
|
73
|
+
# proxy_pass http://127.0.0.1;
|
74
|
+
#}
|
75
|
+
|
76
|
+
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
|
77
|
+
#
|
78
|
+
#location ~ \.php$ {
|
79
|
+
# root html;
|
80
|
+
# fastcgi_pass 127.0.0.1:9000;
|
81
|
+
# fastcgi_index index.php;
|
82
|
+
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
|
83
|
+
# include fastcgi_params;
|
84
|
+
#}
|
85
|
+
|
86
|
+
# deny access to .htaccess files, if Apache's document root
|
87
|
+
# concurs with nginx's one
|
88
|
+
#
|
89
|
+
#location ~ /\.ht {
|
90
|
+
# deny all;
|
91
|
+
#}
|
92
|
+
}
|
93
|
+
|
94
|
+
|
95
|
+
# another virtual host using mix of IP-, name-, and port-based configuration
|
96
|
+
#
|
97
|
+
#server {
|
98
|
+
# listen 8000;
|
99
|
+
# listen somename:8080;
|
100
|
+
# server_name somename alias another.alias;
|
101
|
+
|
102
|
+
# location / {
|
103
|
+
# root html;
|
104
|
+
# index index.html index.htm;
|
105
|
+
# }
|
106
|
+
#}
|
107
|
+
|
108
|
+
|
109
|
+
# HTTPS server
|
110
|
+
#
|
111
|
+
#server {
|
112
|
+
# listen 443;
|
113
|
+
# server_name localhost;
|
114
|
+
|
115
|
+
# ssl on;
|
116
|
+
# ssl_certificate cert.pem;
|
117
|
+
# ssl_certificate_key cert.key;
|
118
|
+
|
119
|
+
# ssl_session_timeout 5m;
|
120
|
+
|
121
|
+
# ssl_protocols SSLv2 SSLv3 TLSv1;
|
122
|
+
# ssl_ciphers HIGH:!aNULL:!MD5;
|
123
|
+
# ssl_prefer_server_ciphers on;
|
124
|
+
|
125
|
+
# location / {
|
126
|
+
# root html;
|
127
|
+
# index index.html index.htm;
|
128
|
+
# }
|
129
|
+
#}
|
130
|
+
|
131
|
+
}
|