A tiny, cross-platform, module based web server for .NET
OTHER License
Bot releases are hidden (Show)
This version backports some fixes that were already in master. See #565 for more details.
Versions 3.5.0 and 3.5.1 were retired because of a problem with NuGet package dependencies. See #569 for details.
Published by geoperez over 4 years ago
Issue #421
Published by geoperez over 4 years ago
Fix issue #452 - Internal server error when response is compressed
Published by geoperez over 4 years ago
PR #450
Version 3.4.0 contains breaking changes. Oops!
This PR is a backport of non-breaking changes since version 3.3.3.
Published by geoperez over 4 years ago
From @rdeago PR #448 :
In preparation for version 4.0, I made some changes to internal classes.
No breaking changes here; this PR could probably be backported to version 3 if desired.
EDIT: I also added back component collections, so they can be safely removed from SWAN 3.0.
EDIT: Added JSON request deserializer with specified property name casing.
Published by geoperez almost 5 years ago
Issue #423
Published by geoperez almost 5 years ago
The module was rewritten to use pluggable criterions and add the ability to ban by max requests per second.
Published by geoperez almost 5 years ago
EmbedIO brings a new security module named IPBanningModule
. This module is an out-of-box feature similar to Fail2ban.
This module integrates one watcher for possible service abuse:
1 - Direct logger inspection - Add Regular Expressions to validate brute-force attacks.
In the next release we will include:
2 - Open connections inspection - Set up max connections per time to validate service abuse attacks.
Check the following example where the module is activated to the webserver with a whitelist of valid clients and a rule to detect massive 404 responses.
var server = new WebServer(o => o
.WithUrlPrefix("http://localhost:1010")
.WithMode(HttpListenerMode.EmbedIO))
.WithIPBanning(o => o
.WithWhitelist(
"",
"172.16.16.124",
"172.16.17.1/24",
"192.168.1-2.2-5")
.WithRules("(404 Not Found)+"), 5,5);
Let's know if you like this new feature or not.
Published by geoperez almost 5 years ago
BREAKING CHANGE
Change Two behavior settings to default value true
(Only EmbedIO HttpListener):
EndPointManager.UseIpv6
- By default wildcard will bind to IPAddress.IPv6Any
.HttpListener.IgnoreWriteExceptions
- By default will ignore the exceptions on Response Output Write (this was the default behavior in v2).Published by geoperez almost 5 years ago
Issue #400
Published by geoperez about 5 years ago
Issue #389
Published by geoperez about 5 years ago
Upgraded codebase to C# 8.0. We are not using .NET Standard 2.1 yet.
Also, fixed issue #351
Published by geoperez about 5 years ago
Add Strong-name to EmbedIO Assembly (Issue #363)
Published by geoperez about 5 years ago
Important update to SWAN JSON Serializer/Deserializer v2.2.0
Published by geoperez about 5 years ago
Published by geoperez about 5 years ago
Fixed issue #352
Published by geoperez about 5 years ago
Issue #347
PR #348
Published by geoperez about 5 years ago
Change some Info level logs to Debug
Published by geoperez about 5 years ago
We will update the following wiki page for upgrade notes:
Published by geoperez over 5 years ago
This version hides some internal classes and methods like WebSocket
and mark with Obsolete
attribute classes, methods and properties that will be dropped or replaced in the new major version.