Skip to content
No description, website, or topics provided.
C C++ Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
accept_corpus initial commit Sep 26, 2019
packaging remove unused dependency for openssl Oct 17, 2019
params_corpus
preload_corpus initial commit Sep 26, 2019
terms_corpus initial commit Sep 26, 2019
CONTRIBUTING.md initial commit Sep 26, 2019
LICENSE initial commit Sep 26, 2019
README.md initial commit Sep 26, 2019
accept_parser_dict.txt initial commit Sep 26, 2019
accept_parser_fuzzer.cc initial commit Sep 26, 2019
config
get_term_length_dict.txt initial commit Sep 26, 2019
get_term_length_fuzzer.cc
ngx_http_sxg_filter_module.c initial commit Sep 26, 2019
ngx_sxg_utils.c initial commit Sep 26, 2019
ngx_sxg_utils.h initial commit Sep 26, 2019
ngx_sxg_utils_test.cc initial commit Sep 26, 2019
param_is_preload_dict.txt initial commit Sep 26, 2019
param_is_preload_fuzzer.cc initial commit Sep 26, 2019

README.md

NGINX SXG extension

Signed HTTP Exchange(SXG) support for nginx. Nginx will convert response from upstream application into SXG, only for clients request on Accept: application/signed-exchane;v=b3 with highest qvalue.

Configuration

Nginx-SXG module requires configuration on nginx.

Directives

sxg

Activation flag of SXG module.

  • on: Enable this plugin.
  • off: Disable this plugin.

Default value is off.

sxg_certificate

Full path for the certificate file. The certificate requires all of the conditions below to match.

  • Has CanSignHttpExchanges extension.
  • Uses ECDSA256 or ECDSA384.

This directive is always required.

sxg_certificate_key

Full path for the private key for the certificate.

This directive is always required.

sxg_cert_url

URL for CBOR encoded certificate file. The protocol must be https.

This directive is always required.

sxg_validity_url

URL for the validity information file. It must be https and must be the same origin with the website.

This directive is always required.

sxg_max_payload

Maximum HTTP body size this module can generate SXG from. Default value is 67108864(64MiB).

Config Example

load_module "modules/ngx_http_sxg_filter_module.so";

http {
    upstream app {
        server 127.0.0.1:3000;
    }
    include       mime.types;
    default_type  application/octet-stream;
    subrequest_output_buffer_size   4096k;

    server {
        listen    80;
        server_name  example.com;

        sxg on;
        sxg_certificate     /path/to/certificate-ecdsa.pem;
        sxg_certificate_key /path/to/private-key-ecdsa.key;
        sxg_cert_url        https://cdn.test.com/example.com.cert.cbor;
        sxg_validity_url    https://example.com/validity/resource.msg;

        location / {
            proxy_pass http://app;
        }
    }
}
You can’t perform that action at this time.