aboutsummaryrefslogtreecommitdiffstats
path: root/doc/src/manual/cowboy_protocol.asciidoc
diff options
context:
space:
mode:
Diffstat (limited to 'doc/src/manual/cowboy_protocol.asciidoc')
-rw-r--r--doc/src/manual/cowboy_protocol.asciidoc75
1 files changed, 75 insertions, 0 deletions
diff --git a/doc/src/manual/cowboy_protocol.asciidoc b/doc/src/manual/cowboy_protocol.asciidoc
new file mode 100644
index 0000000..e1e7501
--- /dev/null
+++ b/doc/src/manual/cowboy_protocol.asciidoc
@@ -0,0 +1,75 @@
+= cowboy_protocol(3)
+
+== Name
+
+cowboy_protocol - HTTP protocol
+
+== Description
+
+The `cowboy_protocol` module implements HTTP/1.1 and HTTP/1.0
+as a Ranch protocol.
+
+== Types
+
+=== opts() = [Option]
+
+[source,erlang]
+----
+Option = {compress, boolean()}
+ | {env, cowboy_middleware:env()}
+ | {max_empty_lines, non_neg_integer()}
+ | {max_header_name_length, non_neg_integer()}
+ | {max_header_value_length, non_neg_integer()}
+ | {max_headers, non_neg_integer()}
+ | {max_keepalive, non_neg_integer()}
+ | {max_request_line_length, non_neg_integer()}
+ | {middlewares, [module()]}
+ | {onresponse, cowboy:onresponse_fun()}
+ | {timeout, timeout()}
+----
+
+Configuration for the HTTP protocol handler.
+
+This configuration is passed to Cowboy when starting listeners
+using `cowboy:start_http/4` or `cowboy:start_https/4` functions.
+
+It can be updated without restarting listeners using the
+Ranch functions `ranch:get_protocol_options/1` and
+`ranch:set_protocol_options/2`.
+
+=== Option descriptions
+
+The default value is given next to the option name.
+
+compress (false)::
+ When enabled, Cowboy will attempt to compress the response body.
+
+env ([{listener, Ref}])::
+ Initial middleware environment.
+
+max_empty_lines (5)::
+ Maximum number of empty lines before a request.
+
+max_header_name_length (64)::
+ Maximum length of header names.
+
+max_header_value_length (4096)::
+ Maximum length of header values.
+
+max_headers (100)::
+ Maximum number of headers allowed per request.
+
+max_keepalive (100)::
+ Maximum number of requests allowed per connection.
+
+max_request_line_length (4096)::
+ Maximum length of the request line.
+
+middlewares ([cowboy_router, cowboy_handler])::
+ List of middlewares to execute for every requests.
+
+onresponse (undefined)::
+ Fun called every time a response is sent.
+
+timeout (5000)::
+ Time in ms with no requests before Cowboy closes the connection.