fluent-plugin-influxdb-v2 1.5.0.pre.579

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,113 @@
1
+ #!/usr/bin/env bash
2
+ #
3
+ # The MIT License
4
+ #
5
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ # of this software and associated documentation files (the "Software"), to deal
7
+ # in the Software without restriction, including without limitation the rights
8
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ # copies of the Software, and to permit persons to whom the Software is
10
+ # furnished to do so, subject to the following conditions:
11
+ #
12
+ # The above copyright notice and this permission notice shall be included in
13
+ # all copies or substantial portions of the Software.
14
+ #
15
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ # THE SOFTWARE.
22
+ #
23
+
24
+ set -e
25
+
26
+ SCRIPT_PATH="$( cd "$(dirname "$0")" ; pwd -P )"
27
+
28
+ docker kill influxdb_v2 || true
29
+ docker rm influxdb_v2 || true
30
+
31
+ docker kill fluentd_influx || true
32
+ docker rm fluentd_influx || true
33
+
34
+ docker kill web || true
35
+ docker rm web || true
36
+
37
+ docker kill ab || true
38
+ docker rm ab || true
39
+
40
+ docker network rm influx_network || true
41
+ docker network create -d bridge influx_network --subnet 192.168.0.0/24 --gateway 192.168.0.1
42
+
43
+ #
44
+ # Start InfluxDB 2
45
+ #
46
+ docker run \
47
+ --detach \
48
+ --name influxdb_v2 \
49
+ --network influx_network \
50
+ --publish 9999:9999 \
51
+ quay.io/influxdb/influxdb:2.0.0-beta
52
+
53
+ #
54
+ # Post onBoarding request to InfluxDB 2
55
+ #
56
+ "${SCRIPT_PATH}"/../bin/influxdb-onboarding.sh
57
+
58
+ #
59
+ # Build actual version of output plugin
60
+ #
61
+ cd "${SCRIPT_PATH}"/../
62
+ docker run --rm -v "${SCRIPT_PATH}/../":/usr/src/app -w /usr/src/app ruby:2.6 gem build fluent-plugin-influxdb-v2.gemspec \
63
+ -o ./examples/fluentd/fluent-plugin-influxdb-v2.gem
64
+
65
+ #
66
+ # Build fluentd Docker image with output plugin
67
+ #
68
+ docker build -t fluentd_influx examples/fluentd
69
+
70
+ #
71
+ # Start fluentd with docker image
72
+ #
73
+ docker run \
74
+ --detach \
75
+ --name fluentd_influx \
76
+ --network influx_network \
77
+ --publish 24224:24224 \
78
+ --publish 24220:24220 \
79
+ fluentd_influx
80
+
81
+ echo "Wait to start fluentd"
82
+ wget -S --tries=20 --retry-connrefused --waitretry=5 --output-document=/dev/null http://localhost:24220/api/plugins.json
83
+
84
+ #
85
+ # Start WebApp
86
+ #
87
+ docker run \
88
+ --detach \
89
+ --name web \
90
+ --network influx_network \
91
+ --volume "${SCRIPT_PATH}"/web/httpd.conf:/usr/local/apache2/conf/httpd.conf \
92
+ --publish 8080:80 \
93
+ --log-driver fluentd \
94
+ --log-opt tag=httpd.access \
95
+ httpd
96
+
97
+ echo "Wait to start WebApp"
98
+ wget -S --spider --tries=20 --retry-connrefused --waitretry=5 http://localhost:8080
99
+
100
+ #
101
+ # Run Apache Benchmark to simulate load
102
+ #
103
+ docker run \
104
+ --detach \
105
+ --name ab \
106
+ --network influx_network \
107
+ --volume "${SCRIPT_PATH}"/ab/urls.txt:/tmp/urls.txt \
108
+ --volume "${SCRIPT_PATH}"/ab/load.sh:/tmp/load.sh \
109
+ russmckendrick/ab bash /tmp/load.sh
110
+
111
+ docker logs -f fluentd_influx
112
+
113
+ #curl -i -X POST -H "Content-Type: application/json" -H "Authorization: Token my-token" "http://localhost:9999/orgs/3c7a552ae6b01ebd/dashboards/import" -d @influxdb/web_app_access_dashboard.json
@@ -0,0 +1,555 @@
1
+ #
2
+ # This is the main Apache HTTP server configuration file. It contains the
3
+ # configuration directives that give the server its instructions.
4
+ # See <URL:http://httpd.apache.org/docs/2.4/> for detailed information.
5
+ # In particular, see
6
+ # <URL:http://httpd.apache.org/docs/2.4/mod/directives.html>
7
+ # for a discussion of each configuration directive.
8
+ #
9
+ # Do NOT simply read the instructions in here without understanding
10
+ # what they do. They're here only as hints or reminders. If you are unsure
11
+ # consult the online docs. You have been warned.
12
+ #
13
+ # Configuration and logfile names: If the filenames you specify for many
14
+ # of the server's control files begin with "/" (or "drive:/" for Win32), the
15
+ # server will use that explicit path. If the filenames do *not* begin
16
+ # with "/", the value of ServerRoot is prepended -- so "logs/access_log"
17
+ # with ServerRoot set to "/usr/local/apache2" will be interpreted by the
18
+ # server as "/usr/local/apache2/logs/access_log", whereas "/logs/access_log"
19
+ # will be interpreted as '/logs/access_log'.
20
+
21
+ #
22
+ # ServerRoot: The top of the directory tree under which the server's
23
+ # configuration, error, and log files are kept.
24
+ #
25
+ # Do not add a slash at the end of the directory path. If you point
26
+ # ServerRoot at a non-local disk, be sure to specify a local disk on the
27
+ # Mutex directive, if file-based mutexes are used. If you wish to share the
28
+ # same ServerRoot for multiple httpd daemons, you will need to change at
29
+ # least PidFile.
30
+ #
31
+ ServerRoot "/usr/local/apache2"
32
+
33
+ #
34
+ # Mutex: Allows you to set the mutex mechanism and mutex file directory
35
+ # for individual mutexes, or change the global defaults
36
+ #
37
+ # Uncomment and change the directory if mutexes are file-based and the default
38
+ # mutex file directory is not on a local disk or is not appropriate for some
39
+ # other reason.
40
+ #
41
+ # Mutex default:logs
42
+
43
+ #
44
+ # Listen: Allows you to bind Apache to specific IP addresses and/or
45
+ # ports, instead of the default. See also the <VirtualHost>
46
+ # directive.
47
+ #
48
+ # Change this to Listen on specific IP addresses as shown below to
49
+ # prevent Apache from glomming onto all bound IP addresses.
50
+ #
51
+ #Listen 12.34.56.78:80
52
+ Listen 80
53
+
54
+ #
55
+ # Dynamic Shared Object (DSO) Support
56
+ #
57
+ # To be able to use the functionality of a module which was built as a DSO you
58
+ # have to place corresponding `LoadModule' lines at this location so the
59
+ # directives contained in it are actually available _before_ they are used.
60
+ # Statically compiled modules (those listed by `httpd -l') do not need
61
+ # to be loaded here.
62
+ #
63
+ # Example:
64
+ # LoadModule foo_module modules/mod_foo.so
65
+ #
66
+ LoadModule mpm_event_module modules/mod_mpm_event.so
67
+ #LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
68
+ #LoadModule mpm_worker_module modules/mod_mpm_worker.so
69
+ LoadModule authn_file_module modules/mod_authn_file.so
70
+ #LoadModule authn_dbm_module modules/mod_authn_dbm.so
71
+ #LoadModule authn_anon_module modules/mod_authn_anon.so
72
+ #LoadModule authn_dbd_module modules/mod_authn_dbd.so
73
+ #LoadModule authn_socache_module modules/mod_authn_socache.so
74
+ LoadModule authn_core_module modules/mod_authn_core.so
75
+ LoadModule authz_host_module modules/mod_authz_host.so
76
+ LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
77
+ LoadModule authz_user_module modules/mod_authz_user.so
78
+ #LoadModule authz_dbm_module modules/mod_authz_dbm.so
79
+ #LoadModule authz_owner_module modules/mod_authz_owner.so
80
+ #LoadModule authz_dbd_module modules/mod_authz_dbd.so
81
+ LoadModule authz_core_module modules/mod_authz_core.so
82
+ #LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
83
+ #LoadModule authnz_fcgi_module modules/mod_authnz_fcgi.so
84
+ LoadModule access_compat_module modules/mod_access_compat.so
85
+ LoadModule auth_basic_module modules/mod_auth_basic.so
86
+ #LoadModule auth_form_module modules/mod_auth_form.so
87
+ #LoadModule auth_digest_module modules/mod_auth_digest.so
88
+ #LoadModule allowmethods_module modules/mod_allowmethods.so
89
+ #LoadModule isapi_module modules/mod_isapi.so
90
+ #LoadModule file_cache_module modules/mod_file_cache.so
91
+ #LoadModule cache_module modules/mod_cache.so
92
+ #LoadModule cache_disk_module modules/mod_cache_disk.so
93
+ #LoadModule cache_socache_module modules/mod_cache_socache.so
94
+ #LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
95
+ #LoadModule socache_dbm_module modules/mod_socache_dbm.so
96
+ #LoadModule socache_memcache_module modules/mod_socache_memcache.so
97
+ #LoadModule socache_redis_module modules/mod_socache_redis.so
98
+ #LoadModule watchdog_module modules/mod_watchdog.so
99
+ #LoadModule macro_module modules/mod_macro.so
100
+ #LoadModule dbd_module modules/mod_dbd.so
101
+ #LoadModule bucketeer_module modules/mod_bucketeer.so
102
+ #LoadModule dumpio_module modules/mod_dumpio.so
103
+ #LoadModule echo_module modules/mod_echo.so
104
+ #LoadModule example_hooks_module modules/mod_example_hooks.so
105
+ #LoadModule case_filter_module modules/mod_case_filter.so
106
+ #LoadModule case_filter_in_module modules/mod_case_filter_in.so
107
+ #LoadModule example_ipc_module modules/mod_example_ipc.so
108
+ #LoadModule buffer_module modules/mod_buffer.so
109
+ #LoadModule data_module modules/mod_data.so
110
+ #LoadModule ratelimit_module modules/mod_ratelimit.so
111
+ LoadModule reqtimeout_module modules/mod_reqtimeout.so
112
+ #LoadModule ext_filter_module modules/mod_ext_filter.so
113
+ #LoadModule request_module modules/mod_request.so
114
+ #LoadModule include_module modules/mod_include.so
115
+ LoadModule filter_module modules/mod_filter.so
116
+ #LoadModule reflector_module modules/mod_reflector.so
117
+ #LoadModule substitute_module modules/mod_substitute.so
118
+ #LoadModule sed_module modules/mod_sed.so
119
+ #LoadModule charset_lite_module modules/mod_charset_lite.so
120
+ #LoadModule deflate_module modules/mod_deflate.so
121
+ #LoadModule xml2enc_module modules/mod_xml2enc.so
122
+ #LoadModule proxy_html_module modules/mod_proxy_html.so
123
+ #LoadModule brotli_module modules/mod_brotli.so
124
+ LoadModule mime_module modules/mod_mime.so
125
+ #LoadModule ldap_module modules/mod_ldap.so
126
+ LoadModule log_config_module modules/mod_log_config.so
127
+ #LoadModule log_debug_module modules/mod_log_debug.so
128
+ #LoadModule log_forensic_module modules/mod_log_forensic.so
129
+ #LoadModule logio_module modules/mod_logio.so
130
+ #LoadModule lua_module modules/mod_lua.so
131
+ LoadModule env_module modules/mod_env.so
132
+ #LoadModule mime_magic_module modules/mod_mime_magic.so
133
+ #LoadModule cern_meta_module modules/mod_cern_meta.so
134
+ #LoadModule expires_module modules/mod_expires.so
135
+ LoadModule headers_module modules/mod_headers.so
136
+ #LoadModule ident_module modules/mod_ident.so
137
+ #LoadModule usertrack_module modules/mod_usertrack.so
138
+ #LoadModule unique_id_module modules/mod_unique_id.so
139
+ LoadModule setenvif_module modules/mod_setenvif.so
140
+ LoadModule version_module modules/mod_version.so
141
+ #LoadModule remoteip_module modules/mod_remoteip.so
142
+ #LoadModule proxy_module modules/mod_proxy.so
143
+ #LoadModule proxy_connect_module modules/mod_proxy_connect.so
144
+ #LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
145
+ #LoadModule proxy_http_module modules/mod_proxy_http.so
146
+ #LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
147
+ #LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
148
+ #LoadModule proxy_uwsgi_module modules/mod_proxy_uwsgi.so
149
+ #LoadModule proxy_fdpass_module modules/mod_proxy_fdpass.so
150
+ #LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
151
+ #LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
152
+ #LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
153
+ #LoadModule proxy_express_module modules/mod_proxy_express.so
154
+ #LoadModule proxy_hcheck_module modules/mod_proxy_hcheck.so
155
+ #LoadModule session_module modules/mod_session.so
156
+ #LoadModule session_cookie_module modules/mod_session_cookie.so
157
+ #LoadModule session_crypto_module modules/mod_session_crypto.so
158
+ #LoadModule session_dbd_module modules/mod_session_dbd.so
159
+ #LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
160
+ #LoadModule slotmem_plain_module modules/mod_slotmem_plain.so
161
+ #LoadModule ssl_module modules/mod_ssl.so
162
+ #LoadModule optional_hook_export_module modules/mod_optional_hook_export.so
163
+ #LoadModule optional_hook_import_module modules/mod_optional_hook_import.so
164
+ #LoadModule optional_fn_import_module modules/mod_optional_fn_import.so
165
+ #LoadModule optional_fn_export_module modules/mod_optional_fn_export.so
166
+ #LoadModule dialup_module modules/mod_dialup.so
167
+ #LoadModule http2_module modules/mod_http2.so
168
+ #LoadModule proxy_http2_module modules/mod_proxy_http2.so
169
+ #LoadModule md_module modules/mod_md.so
170
+ #LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
171
+ #LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so
172
+ #LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so
173
+ #LoadModule lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.so
174
+ LoadModule unixd_module modules/mod_unixd.so
175
+ #LoadModule heartbeat_module modules/mod_heartbeat.so
176
+ #LoadModule heartmonitor_module modules/mod_heartmonitor.so
177
+ #LoadModule dav_module modules/mod_dav.so
178
+ LoadModule status_module modules/mod_status.so
179
+ LoadModule autoindex_module modules/mod_autoindex.so
180
+ #LoadModule asis_module modules/mod_asis.so
181
+ #LoadModule info_module modules/mod_info.so
182
+ #LoadModule suexec_module modules/mod_suexec.so
183
+ <IfModule !mpm_prefork_module>
184
+ #LoadModule cgid_module modules/mod_cgid.so
185
+ </IfModule>
186
+ <IfModule mpm_prefork_module>
187
+ #LoadModule cgi_module modules/mod_cgi.so
188
+ </IfModule>
189
+ #LoadModule dav_fs_module modules/mod_dav_fs.so
190
+ #LoadModule dav_lock_module modules/mod_dav_lock.so
191
+ #LoadModule vhost_alias_module modules/mod_vhost_alias.so
192
+ #LoadModule negotiation_module modules/mod_negotiation.so
193
+ LoadModule dir_module modules/mod_dir.so
194
+ #LoadModule imagemap_module modules/mod_imagemap.so
195
+ #LoadModule actions_module modules/mod_actions.so
196
+ #LoadModule speling_module modules/mod_speling.so
197
+ #LoadModule userdir_module modules/mod_userdir.so
198
+ LoadModule alias_module modules/mod_alias.so
199
+ LoadModule rewrite_module modules/mod_rewrite.so
200
+
201
+ <IfModule unixd_module>
202
+ #
203
+ # If you wish httpd to run as a different user or group, you must run
204
+ # httpd as root initially and it will switch.
205
+ #
206
+ # User/Group: The name (or #number) of the user/group to run httpd as.
207
+ # It is usually good practice to create a dedicated user and group for
208
+ # running httpd, as with most system services.
209
+ #
210
+ User daemon
211
+ Group daemon
212
+
213
+ </IfModule>
214
+
215
+ # 'Main' server configuration
216
+ #
217
+ # The directives in this section set up the values used by the 'main'
218
+ # server, which responds to any requests that aren't handled by a
219
+ # <VirtualHost> definition. These values also provide defaults for
220
+ # any <VirtualHost> containers you may define later in the file.
221
+ #
222
+ # All of these directives may appear inside <VirtualHost> containers,
223
+ # in which case these default settings will be overridden for the
224
+ # virtual host being defined.
225
+ #
226
+
227
+ #
228
+ # ServerAdmin: Your address, where problems with the server should be
229
+ # e-mailed. This address appears on some server-generated pages, such
230
+ # as error documents. e.g. admin@your-domain.com
231
+ #
232
+ ServerAdmin you@example.com
233
+
234
+ #
235
+ # ServerName gives the name and port that the server uses to identify itself.
236
+ # This can often be determined automatically, but we recommend you specify
237
+ # it explicitly to prevent problems during startup.
238
+ #
239
+ # If your host doesn't have a registered DNS name, enter its IP address here.
240
+ #
241
+ ServerName http://web:80
242
+
243
+ #
244
+ # Deny access to the entirety of your server's filesystem. You must
245
+ # explicitly permit access to web content directories in other
246
+ # <Directory> blocks below.
247
+ #
248
+ <Directory />
249
+ AllowOverride none
250
+ Require all denied
251
+ </Directory>
252
+
253
+ #
254
+ # Note that from this point forward you must specifically allow
255
+ # particular features to be enabled - so if something's not working as
256
+ # you might expect, make sure that you have specifically enabled it
257
+ # below.
258
+ #
259
+
260
+ #
261
+ # DocumentRoot: The directory out of which you will serve your
262
+ # documents. By default, all requests are taken from this directory, but
263
+ # symbolic links and aliases may be used to point to other locations.
264
+ #
265
+ DocumentRoot "/usr/local/apache2/htdocs"
266
+ <Directory "/usr/local/apache2/htdocs">
267
+ #
268
+ # Possible values for the Options directive are "None", "All",
269
+ # or any combination of:
270
+ # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
271
+ #
272
+ # Note that "MultiViews" must be named *explicitly* --- "Options All"
273
+ # doesn't give it to you.
274
+ #
275
+ # The Options directive is both complicated and important. Please see
276
+ # http://httpd.apache.org/docs/2.4/mod/core.html#options
277
+ # for more information.
278
+ #
279
+ Options Indexes FollowSymLinks
280
+
281
+ #
282
+ # AllowOverride controls what directives may be placed in .htaccess files.
283
+ # It can be "All", "None", or any combination of the keywords:
284
+ # AllowOverride FileInfo AuthConfig Limit
285
+ #
286
+ AllowOverride None
287
+
288
+ #
289
+ # Controls who can get stuff from this server.
290
+ #
291
+ Require all granted
292
+ </Directory>
293
+
294
+ #
295
+ # DirectoryIndex: sets the file that Apache will serve if a directory
296
+ # is requested.
297
+ #
298
+ <IfModule dir_module>
299
+ DirectoryIndex index.html
300
+ </IfModule>
301
+
302
+ #
303
+ # The following lines prevent .htaccess and .htpasswd files from being
304
+ # viewed by Web clients.
305
+ #
306
+ <Files ".ht*">
307
+ Require all denied
308
+ </Files>
309
+ RewriteEngine On
310
+ RewriteRule ^/?.+$ - [R=200]
311
+ #RewriteRule ^/?.+$ / [L,R]
312
+ #RewriteRule ^/?.+$ / [R,L]
313
+
314
+ #
315
+ # ErrorLog: The location of the error log file.
316
+ # If you do not specify an ErrorLog directive within a <VirtualHost>
317
+ # container, error messages relating to that virtual host will be
318
+ # logged here. If you *do* define an error logfile for a <VirtualHost>
319
+ # container, that host's errors will be logged there and not here.
320
+ #
321
+ ErrorLog /proc/self/fd/2
322
+
323
+ #
324
+ # LogLevel: Control the number of messages logged to the error_log.
325
+ # Possible values include: debug, info, notice, warn, error, crit,
326
+ # alert, emerg.
327
+ #
328
+ LogLevel warn
329
+
330
+ <IfModule log_config_module>
331
+ #
332
+ # The following directives define some format nicknames for use with
333
+ # a CustomLog directive (see below).
334
+ #
335
+ LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
336
+ LogFormat "%h %l %u %t \"%r\" %>s %b" common
337
+
338
+ <IfModule logio_module>
339
+ # You need to enable mod_logio.c to use %I and %O
340
+ LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
341
+ </IfModule>
342
+
343
+ #
344
+ # The location and format of the access logfile (Common Logfile Format).
345
+ # If you do not define any access logfiles within a <VirtualHost>
346
+ # container, they will be logged here. Contrariwise, if you *do*
347
+ # define per-<VirtualHost> access logfiles, transactions will be
348
+ # logged therein and *not* in this file.
349
+ #
350
+ CustomLog /proc/self/fd/1 common
351
+
352
+ #
353
+ # If you prefer a logfile with access, agent, and referer information
354
+ # (Combined Logfile Format) you can use the following directive.
355
+ #
356
+ #CustomLog "logs/access_log" combined
357
+ </IfModule>
358
+
359
+ <IfModule alias_module>
360
+ #
361
+ # Redirect: Allows you to tell clients about documents that used to
362
+ # exist in your server's namespace, but do not anymore. The client
363
+ # will make a new request for the document at its new location.
364
+ # Example:
365
+ # Redirect permanent /foo http://www.example.com/bar
366
+
367
+ #
368
+ # Alias: Maps web paths into filesystem paths and is used to
369
+ # access content that does not live under the DocumentRoot.
370
+ # Example:
371
+ # Alias /webpath /full/filesystem/path
372
+ #
373
+ # If you include a trailing / on /webpath then the server will
374
+ # require it to be present in the URL. You will also likely
375
+ # need to provide a <Directory> section to allow access to
376
+ # the filesystem path.
377
+
378
+ #
379
+ # ScriptAlias: This controls which directories contain server scripts.
380
+ # ScriptAliases are essentially the same as Aliases, except that
381
+ # documents in the target directory are treated as applications and
382
+ # run by the server when requested rather than as documents sent to the
383
+ # client. The same rules about trailing "/" apply to ScriptAlias
384
+ # directives as to Alias.
385
+ #
386
+ ScriptAlias /cgi-bin/ "/usr/local/apache2/cgi-bin/"
387
+
388
+ </IfModule>
389
+
390
+ <IfModule cgid_module>
391
+ #
392
+ # ScriptSock: On threaded servers, designate the path to the UNIX
393
+ # socket used to communicate with the CGI daemon of mod_cgid.
394
+ #
395
+ #Scriptsock cgisock
396
+ </IfModule>
397
+
398
+ #
399
+ # "/usr/local/apache2/cgi-bin" should be changed to whatever your ScriptAliased
400
+ # CGI directory exists, if you have that configured.
401
+ #
402
+ <Directory "/usr/local/apache2/cgi-bin">
403
+ AllowOverride None
404
+ Options None
405
+ Require all granted
406
+ </Directory>
407
+
408
+ <IfModule headers_module>
409
+ #
410
+ # Avoid passing HTTP_PROXY environment to CGI's on this or any proxied
411
+ # backend servers which have lingering "httpoxy" defects.
412
+ # 'Proxy' request header is undefined by the IETF, not listed by IANA
413
+ #
414
+ RequestHeader unset Proxy early
415
+ </IfModule>
416
+
417
+ <IfModule mime_module>
418
+ #
419
+ # TypesConfig points to the file containing the list of mappings from
420
+ # filename extension to MIME-type.
421
+ #
422
+ TypesConfig conf/mime.types
423
+
424
+ #
425
+ # AddType allows you to add to or override the MIME configuration
426
+ # file specified in TypesConfig for specific file types.
427
+ #
428
+ #AddType application/x-gzip .tgz
429
+ #
430
+ # AddEncoding allows you to have certain browsers uncompress
431
+ # information on the fly. Note: Not all browsers support this.
432
+ #
433
+ #AddEncoding x-compress .Z
434
+ #AddEncoding x-gzip .gz .tgz
435
+ #
436
+ # If the AddEncoding directives above are commented-out, then you
437
+ # probably should define those extensions to indicate media types:
438
+ #
439
+ AddType application/x-compress .Z
440
+ AddType application/x-gzip .gz .tgz
441
+
442
+ #
443
+ # AddHandler allows you to map certain file extensions to "handlers":
444
+ # actions unrelated to filetype. These can be either built into the server
445
+ # or added with the Action directive (see below)
446
+ #
447
+ # To use CGI scripts outside of ScriptAliased directories:
448
+ # (You will also need to add "ExecCGI" to the "Options" directive.)
449
+ #
450
+ #AddHandler cgi-script .cgi
451
+
452
+ # For type maps (negotiated resources):
453
+ #AddHandler type-map var
454
+
455
+ #
456
+ # Filters allow you to process content before it is sent to the client.
457
+ #
458
+ # To parse .shtml files for server-side includes (SSI):
459
+ # (You will also need to add "Includes" to the "Options" directive.)
460
+ #
461
+ #AddType text/html .shtml
462
+ #AddOutputFilter INCLUDES .shtml
463
+ </IfModule>
464
+
465
+ #
466
+ # The mod_mime_magic module allows the server to use various hints from the
467
+ # contents of the file itself to determine its type. The MIMEMagicFile
468
+ # directive tells the module where the hint definitions are located.
469
+ #
470
+ #MIMEMagicFile conf/magic
471
+
472
+ #
473
+ # Customizable error responses come in three flavors:
474
+ # 1) plain text 2) local redirects 3) external redirects
475
+ #
476
+ # Some examples:
477
+ #ErrorDocument 500 "The server made a boo boo."
478
+ #ErrorDocument 404 /missing.html
479
+ #ErrorDocument 404 "/cgi-bin/missing_handler.pl"
480
+ #ErrorDocument 402 http://www.example.com/subscription_info.html
481
+ ErrorDocument 200 "The API request accepted."
482
+ #
483
+
484
+ #
485
+ # MaxRanges: Maximum number of Ranges in a request before
486
+ # returning the entire resource, or one of the special
487
+ # values 'default', 'none' or 'unlimited'.
488
+ # Default setting is to accept 200 Ranges.
489
+ #MaxRanges unlimited
490
+
491
+ #
492
+ # EnableMMAP and EnableSendfile: On systems that support it,
493
+ # memory-mapping or the sendfile syscall may be used to deliver
494
+ # files. This usually improves server performance, but must
495
+ # be turned off when serving from networked-mounted
496
+ # filesystems or if support for these functions is otherwise
497
+ # broken on your system.
498
+ # Defaults: EnableMMAP On, EnableSendfile Off
499
+ #
500
+ #EnableMMAP off
501
+ #EnableSendfile on
502
+
503
+ # Supplemental configuration
504
+ #
505
+ # The configuration files in the conf/extra/ directory can be
506
+ # included to add extra features or to modify the default configuration of
507
+ # the server, or you may simply copy their contents here and change as
508
+ # necessary.
509
+
510
+ # Server-pool management (MPM specific)
511
+ #Include conf/extra/httpd-mpm.conf
512
+
513
+ # Multi-language error messages
514
+ #Include conf/extra/httpd-multilang-errordoc.conf
515
+
516
+ # Fancy directory listings
517
+ #Include conf/extra/httpd-autoindex.conf
518
+
519
+ # Language settings
520
+ #Include conf/extra/httpd-languages.conf
521
+
522
+ # User home directories
523
+ #Include conf/extra/httpd-userdir.conf
524
+
525
+ # Real-time info on requests and configuration
526
+ #Include conf/extra/httpd-info.conf
527
+
528
+ # Virtual hosts
529
+ #Include conf/extra/httpd-vhosts.conf
530
+
531
+ # Local access to the Apache HTTP Server Manual
532
+ #Include conf/extra/httpd-manual.conf
533
+
534
+ # Distributed authoring and versioning (WebDAV)
535
+ #Include conf/extra/httpd-dav.conf
536
+
537
+ # Various default settings
538
+ #Include conf/extra/httpd-default.conf
539
+
540
+ # Configure mod_proxy_html to understand HTML4/XHTML1
541
+ <IfModule proxy_html_module>
542
+ Include conf/extra/proxy-html.conf
543
+ </IfModule>
544
+
545
+ # Secure (SSL/TLS) connections
546
+ #Include conf/extra/httpd-ssl.conf
547
+ #
548
+ # Note: The following must must be present to support
549
+ # starting without SSL on platforms with no /dev/random equivalent
550
+ # but a statically compiled-in mod_ssl.
551
+ #
552
+ <IfModule ssl_module>
553
+ SSLRandomSeed startup builtin
554
+ SSLRandomSeed connect builtin
555
+ </IfModule>