WeAmp.PageSpeed.Sidecar.NativeAssets.Linux
1.15.0
Prefix Reserved
dotnet add package WeAmp.PageSpeed.Sidecar.NativeAssets.Linux --version 1.15.0
NuGet\Install-Package WeAmp.PageSpeed.Sidecar.NativeAssets.Linux -Version 1.15.0
<PackageReference Include="WeAmp.PageSpeed.Sidecar.NativeAssets.Linux" Version="1.15.0" />
<PackageVersion Include="WeAmp.PageSpeed.Sidecar.NativeAssets.Linux" Version="1.15.0" />
<PackageReference Include="WeAmp.PageSpeed.Sidecar.NativeAssets.Linux" />
paket add WeAmp.PageSpeed.Sidecar.NativeAssets.Linux --version 1.15.0
#r "nuget: WeAmp.PageSpeed.Sidecar.NativeAssets.Linux, 1.15.0"
#:package WeAmp.PageSpeed.Sidecar.NativeAssets.Linux@1.15.0
#addin nuget:?package=WeAmp.PageSpeed.Sidecar.NativeAssets.Linux&version=1.15.0
#tool nuget:?package=WeAmp.PageSpeed.Sidecar.NativeAssets.Linux&version=1.15.0
Matched (nginx + ngx_pagespeed) Linux binaries for WeAmp.PageSpeed.Sidecar. Reference this alongside WeAmp.PageSpeed.Sidecar to supply the bundled reverse-proxy engine for linux-x64 / linux-arm64.
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on WeAmp.PageSpeed.Sidecar.NativeAssets.Linux:
| Package | Downloads |
|---|---|
|
WeAmp.PageSpeed.Sidecar
mod_pagespeed 1.15 for ASP.NET Core. The default Inverse topology makes your Kestrel app the public front door (you own the socket/TLS/auth) with a bundled, matched nginx + ngx_pagespeed running loopback-only behind it as an optimize-proxy — the middleware streams optimizable responses to it (image recompression, CSS/JS minification, critical CSS, Core-Web-Vitals-oriented HTML rewriting). The classic front-proxy topology (Process — nginx fronts your app) and connecting to an operator-managed nginx (External) remain available. Wire it in with AddPageSpeed() and UsePageSpeed(); the package generates its own nginx config, manages the process lifecycle, and exposes health checks. Linux-only (linux-x64, linux-arm64); on Windows use the IIS module, on macOS or containers without nginx use WeAmp.PageSpeed.AspNetCore (ModPageSpeed 2.0). Commercial license, BYOL; optimization runs unlicensed for evaluation with an X-PageSpeed-Warn header. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.15.0 | 110 | 6/4/2026 |
1.15.0 (GA): the Inverse topology is the default. Add services.AddPageSpeed(config) + app.UsePageSpeed() to your ASP.NET Core app and your Kestrel server stays the public front door — it owns the listening socket, TLS, auth and routing exactly as before. The bundled nginx + ngx_pagespeed runs loopback-only behind your app as an optimize-proxy: the middleware streams optimizable responses over loopback (YARP) to nginx, which optimizes and proxy_pass-es back to a private raw-origin Kestrel endpoint where the middleware bypasses itself. Non-optimizable requests, and any request while the sidecar isn't running, pass straight through un-optimized (always-functional). By default (Sidecar.OwnPublicPort = true) the package binds the public port (Sidecar.ListenPort, 8080) as a code endpoint; set OwnPublicPort = false to bind it yourself via Kestrel:Endpoints (e.g. for in-process TLS). For edge TLS, front the public port with a terminator or load balancer; the loopback hop to nginx is plain HTTP with a single validated X-Forwarded-Proto so optimized asset URLs root at the public scheme.
Zero-config host handling (forward-all): optimization works for any host your app serves with no domain configuration, because the module implicitly authorizes each request's own same-origin resources. Domains.AuthorizedDomains is not a setup step; localhost is always optimized. Defense-in-depth: set Sidecar.RestrictToAuthorizedHosts = true to optimize only hosts you list. The /pagespeed_* admin endpoints return 404 from the public front door by default; set Sidecar.AllowPublicAdmin = true (requires AdminAuth.Enabled) to expose them behind the bearer token.
Modes: Inverse (default), Process (the classic front-proxy where nginx is the public front door — still supported), and External (operator-managed nginx). Docker is reserved and fails validation.
The bundled nginx is on the 1.30 stable branch (1.30.2). A native pagespeed-nginx-launch shim, on by default (Sidecar.UseLaunchShim), arms PR_SET_PDEATHSIG so the bundled nginx can't be orphaned (and hold its loopback port) if the host process is hard-killed (SIGKILL/OOM/container hard-stop) once launch has settled; the bundled runtime identifier (RID) is derived at runtime so the matched nginx resolves on linux-arm64 as well as linux-x64; and a per-RID build-info.json provenance manifest is emitted. The native engine targets a glibc 2.31 floor with statically-linked libstdc++ and no OpenSSL host dependency, so it loads on Debian 11/12, Ubuntu 20.04+, RHEL/Alma 8/9 and Amazon Linux 2023. A single dotnet add package auto-pulls the native engine; binaries are stripped (debug archived separately). This package is mod_pagespeed 1.15 (jpeg/png/webp recompression, CSS/JS minification, critical-CSS inlining, Core-Web-Vitals HTML rewriting); it does not do AVIF (AVIF is ModPageSpeed 2.0 only).