https://github.com/netlah/http-overrides
Support setting ASP.NET Core HttpOverrides from configuration
https://github.com/netlah/http-overrides
Last synced: 5 months ago
JSON representation
Support setting ASP.NET Core HttpOverrides from configuration
- Host: GitHub
- URL: https://github.com/netlah/http-overrides
- Owner: NetLah
- License: mit
- Created: 2022-08-08T16:45:59.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-04-04T10:28:32.000Z (about 1 year ago)
- Last Synced: 2025-07-22T20:31:44.000Z (12 months ago)
- Language: C#
- Homepage:
- Size: 1020 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# NetLah.Extensions.HttpOverrides - .NET Library
[NetLah.Extensions.HttpOverrides](https://www.nuget.org/packages/NetLah.Extensions.HttpOverrides/) is a library support setting ASP.NET Core HttpOverrides from configuration.
## Nuget package
[](https://www.nuget.org/packages/NetLah.Extensions.HttpOverrides/)
## Build Status
[](https://actions-badge.atrox.dev/NetLah/http-overrides/goto?ref=main)
## Getting started
### 1. Add/Update PackageReference to .csproj
```xml
```
### 2. Settings From Configuration
```csharp
builder.Services.AddHttpOverrides(builder.Configuration);
```
### 3. Applies Http Overrides
```csharp
app.UseHttpOverrides(logger);
```
## Overrided by ASPNETCORE_FORWARDEDHEADERS_ENABLED
This HttpOverrides will check configuration ASPNETCORE_FORWARDEDHEADERS_ENABLED or ForwardedHeaders_Enabled not turned on to not override default behavior of ASP.NETCore.
Reference [ForwardedHeadersOptionsSetup.cs](https://github.com/dotnet/aspnetcore/blob/main/src/DefaultBuilder/src/ForwardedHeadersOptionsSetup.cs)
## Sample and default configuration
```json
{
"HealthCheck": {
"IsEnabled": true,
"IsAzureAppServiceContainer": false, // will include /healthz and /robots933456.txt
"LogLevel": "Debug",
"Path": "/healthz",
"Paths": [ "/healthz", "/robots933456.txt" ],
"Port": null,
"Prefix": null,
"Suffix": null,
"RemoveResponseWriter": false
},
"HttpOverrides": {
"ClearForwardLimit": false,
"ClearKnownProxies": false,
"ClearKnownNetworks": false,
"ForwardLimit": 1,
"KnownProxies": "::1",
"KnownNetworks": "127.0.0.1/8",
"ForwardedForHeaderName": "X-Forwarded-For",
"ForwardedHostHeaderName": "X-Forwarded-Host",
"ForwardedProtoHeaderName": "X-Forwarded-Proto",
"OriginalForHeaderName": "X-Original-For",
"OriginalHostHeaderName": "X-Original-Host",
"OriginalProtoHeaderName": "X-Original-Proto",
"ForwardedHeaders": "", // XForwardedFor,XForwardedHost,XForwardedProto
"AllowedHosts": "" // "*"
}
}
```