view xml/en/docs/http/ngx_http_spdy_module.xml @ 2769:16f6fa718be2

Updated TLSv1.3 support notes. Previous notes described some early development snapshot of OpenSSL 1.1.1 with disabled TLSv1.3 by default. It was then enabled in the first alpha. Further, the updated text covers later major releases such as OpenSSL 3.0.
author Sergey Kandaurov <pluknet@nginx.com>
date Thu, 30 Sep 2021 16:29:20 +0300
parents c711a8a1a8f9
children 9a8d15333a58
line wrap: on
line source

<?xml version="1.0"?>

<!--
  Copyright (C) Nginx, Inc.
  -->

<!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">

<module name="Module ngx_http_spdy_module"
        link="/en/docs/http/ngx_http_spdy_module.html"
        lang="en"
        rev="10">

<section id="summary">

<para>
The <literal>ngx_http_spdy_module</literal> module provides experimental
support for <link url="http://www.chromium.org/spdy/spdy-protocol">SPDY</link>.
Currently,
<link url="http://www.chromium.org/spdy/spdy-protocol/spdy-protocol-draft3-1">draft
3.1</link> of SPDY protocol is implemented.
<note>
Before version 1.5.10,
<link url="http://www.chromium.org/spdy/spdy-protocol/spdy-protocol-draft2">draft
2</link> of SPDY protocol was implemented.
</note>
</para>

<para>
This module is not built by default, it should be enabled with
the <literal>--with-http_spdy_module</literal>
configuration parameter.
</para>

<para>
<note>
This module was superseded by the
<link doc="ngx_http_v2_module.xml">ngx_http_v2_module</link> module
in 1.9.5.
</note>
</para>

</section>


<section id="issues" name="Known Issues">

<para>
The module is experimental, caveat emptor applies.
</para>

<para>
Current implementation of SPDY protocol does not support “server push”.
</para>

<para>
In versions prior to 1.5.9, responses in SPDY connections could not be
<link doc="ngx_http_core_module.xml" id="limit_rate">rate limited</link>.
</para>

<para>
Buffering of a client request body cannot be disabled
regardless of
<link doc="ngx_http_proxy_module.xml" id="proxy_request_buffering"/>,
<link doc="ngx_http_fastcgi_module.xml" id="fastcgi_request_buffering"/>,
<link doc="ngx_http_uwsgi_module.xml" id="uwsgi_request_buffering"/>, and
<link doc="ngx_http_scgi_module.xml" id="scgi_request_buffering"/>
directive values.
</para>

</section>


<section id="example" name="Example Configuration">

<para>
<example>
server {
    listen 443 ssl spdy;

    ssl_certificate server.crt;
    ssl_certificate_key server.key;
    ...
}
</example>
<note>
Note that in order to accept both
<link doc="ngx_http_ssl_module.xml">HTTPS</link> and SPDY connections
simultaneously on the same port,
<link url="http://www.openssl.org">OpenSSL</link> library used should support
“Next Protocol Negotiation” TLS extension, available since OpenSSL
version 1.0.1.
</note>
</para>

</section>


<section id="directives" name="Directives">

<directive name="spdy_chunk_size">
<syntax><value>size</value></syntax>
<default>8k</default>
<context>http</context>
<context>server</context>
<context>location</context>
<appeared-in>1.5.9</appeared-in>

<para>
Sets the maximum size of chunks
into which the response body is
<link url="http://www.chromium.org/spdy/spdy-protocol/spdy-protocol-draft2#TOC-Data-frames">
sliced</link>.
A too low value results in higher overhead.
A too high value impairs prioritization due to
<link url="http://en.wikipedia.org/wiki/Head-of-line_blocking">
HOL blocking</link>.
</para>

</directive>


<directive name="spdy_headers_comp">
<syntax><value>level</value></syntax>
<default>0</default>
<context>http</context>
<context>server</context>

<para>
Sets the header compression <value>level</value> of a response in a range from
1 (fastest, less compression) to 9 (slowest, best compression).
The special value 0 turns off the header compression.
</para>

</directive>

</section>


<section id="variables" name="Embedded Variables">

<para>
The <literal>ngx_http_spdy_module</literal> module
supports the following embedded variables:
<list type="tag" compact="no">

<tag-name id="var_spdy"><var>$spdy</var></tag-name>
<tag-desc>
SPDY protocol version for SPDY connections,
or an empty string otherwise;
</tag-desc>

<tag-name id="var_spdy_request_priority"><var>$spdy_request_priority</var>
</tag-name>
<tag-desc>
request priority for SPDY connections,
or an empty string otherwise.
</tag-desc>

</list>
</para>

</section>

</module>