| Crates.io | nginx-src |
| lib.rs | nginx-src |
| version | 1.28.1+1.28.0 |
| created_at | 2025-08-15 01:23:28.351883+00 |
| updated_at | 2025-09-10 21:35:46.627014+00 |
| description | Source of NGINX |
| homepage | https://github.com/nginx/ngx-rust |
| repository | https://github.com/nginx/ngx-rust |
| max_upload_size | |
| id | 1796058 |
| size | 7,622,514 |
The crate contains a vendored copy of the NGINX source and a logic to build it. It is intended to be consumed by the nginx-sys crate for CI builds, tests or rustdoc generation.
It is notably not intended for producing binaries suitable for production use.
For such scenarios we recommend building the ngx-rust based module against
the packages from https://nginx.org/ or your preferred distribution.
See the nginx-sys documentation for building ngx-rust modules against an
existing pre-configured NGINX source tree.
This crate follows the latest stable branch of NGINX.
The crate can be built on common Unix-like operating systems and requires all the usual NGINX build dependencies (including development headers for the libraries) installed in system paths:
We don't intend to support Windows at the moment, as NGINX does not support dynamic modules for this target.
Following variables can be set to customize the build.
NGX_CONFIGURE_ARGS — additional arguments to pass to the NGINX configure
script.
Example: export NGX_CONFIGURE_ARGS='--with-debug'; cargo build
NGX_CFLAGS, NGX_LDFLAGS — additional C compiler and linker flags to
pass to the NGINX configure script. Internally, this is added to the
--with-cc-opt=... and --with-ld-opt=... configure arguments.
Example:
export NGX_CFLAGS='-I/opt/boringssl/include'
export NGX_LDFLAGS='-L/opt/boringssl/build -lstdc++'
cargo build
While we recommend using the system libraries, it is still possible to opt into downloading the NGINX itself and the dependency sources from the network with the help of the following variables:
NGX_VERSION — if specified, the version of NGINX to download and build
instead of the one bundled with the crate.OPENSSL_VERSION — if specified, the version of OpenSSL to download and use
use instead of the system-provided library.PCRE2_VERSION — if specified, the version of PCRE2 to download and use
instead of the system-provided library.ZLIB_VERSION — if specified, the version of Zlib to download and use
instead of the system-provided library.If the gpg executable is present in the path, the build script will verify
the integrity of the downloaded files using GPG signatures and a known set of
public keys.
This behavior can be disabled by setting NGX_NO_SIGNATURE_CHECK.
The code in this crate is licensed under the Apache License 2.0. The crate also contains the source code of NGINX, distributed under the BSD 2-Clause License.