0
Fork 0
mirror of https://github.com/ninenines/cowboy.git synced 2025-07-14 20:30:23 +00:00
Small, fast, modern HTTP server for Erlang/OTP.
Find a file
Loïc Hoguin a013becc66 Add protection against slowloris vulnerability
This changes the behavior of the `timeout` protocol option to
mean "Time in which the full request line and headers must be
received". The default of 5s should be fine for all normal uses.

This change has no noticeable impact on performance and is thus
enabled by default for everyone. It can be disabled by setting
`timeout` to `infinity` although that is definitely not encouraged.

Inspired by the contribution from @naryl on github.
2013-01-06 19:49:01 +01:00
doc Update version to 0.6.0 2012-05-23 14:53:48 +02:00
examples Fix examples to follow new env tuple standard 2013-01-05 19:19:14 -08:00
guide Add middleware support 2013-01-03 22:47:51 +01:00
src Add protection against slowloris vulnerability 2013-01-06 19:49:01 +01:00
test Add protection against slowloris vulnerability 2013-01-06 19:49:01 +01:00
.gitignore Add .cowboy.plt to the gitignore 2012-04-29 01:20:05 +02:00
AUTHORS Update AUTHORS file 2012-08-09 10:02:18 +02:00
CHANGELOG.md Small Markdown fixes to better follow the specs 2012-12-07 16:19:08 +01:00
CONTRIBUTING.md Add CONTRIBUTING.md file 2012-10-05 00:28:12 +02:00
LICENSE Update version to 0.6.0 2012-05-23 14:53:48 +02:00
Makefile Stop using rebar in the Makefile 2013-01-05 17:25:04 +01:00
README.md Salvage the README and move parts into the guide 2013-01-03 16:01:49 +01:00
rebar.config Stop using rebar in the Makefile 2013-01-05 17:25:04 +01:00
ROADMAP.md Small Markdown fixes to better follow the specs 2012-12-07 16:19:08 +01:00

Cowboy

Cowboy is a small, fast and modular HTTP server written in Erlang.

Goals

Cowboy aims to provide a complete HTTP stack in a small code base. It is optimized for low latency and low memory usage, in parts because it uses binary strings.

Cowboy provides routing capabilities, selectively dispatching requests to handlers written in Erlang.

Because it uses Ranch for managing connections, Cowboy can easily be embedded in any other application.

No parameterized module. No process dictionary. Clean Erlang code.

Getting Started

  • Read the guide
  • Look at the examples in the examples/ directory
  • Build API documentation with make docs; open doc/index.html

Support