1042 Commits

Author SHA1 Message Date
benoitc
d6012fa84b fix gevent_pywsgi worker. close #314
access_log arity has changed in 0.14.0. Apply this change to the pywsgi
worker as well.
2012-03-16 07:18:30 +01:00
benoitc
b7b6179593 fix gevent wsgi change 2012-03-16 07:13:25 +01:00
benoitc
ba60d6d4a9 imahe gevent_sgi and alias of gevent_pywsgi
wgsi gevent is now an alias of pywsgi in future 1.0 so slowly deprecate
it.
2012-03-16 06:49:24 +01:00
benoitc
1947e2b26e sync doc 2012-03-16 05:59:34 +01:00
benoitc
76446ad8d3 fix typo. close #311 2012-03-16 05:57:20 +01:00
benoitc
f181219903 add Maxim Kamenkov to the THANKS. close #313 . 2012-03-16 05:53:59 +01:00
Maxim Kamenkov
16eb657584 Added "validate_class" option validator.
Now you able to use existed type instance or factory method to create and customize class during in-code configuration.

E.g.:
>>> settings.set('worker_class', MyWorkerClass)
>>> settings.set('worker_class', lambda: MyWorkerClass)

All other formats still valid.
2012-03-16 05:52:25 +01:00
benoitc
70f470e63e add Mazdak Rezvani to the THANKS. close #312 . 2012-03-16 05:43:55 +01:00
Mazdak Rezvani
5d4fc56dcb Added support for max_requests for Tornado workers, and support for
disabling x_forwarded_for_header.
2012-03-16 05:39:33 +01:00
benoitc
8546b766c0 fix doc and remove dups in THANKs 2012-03-04 10:17:50 +01:00
benoitc
8292ab071d bump to 0.14.1 2012-03-04 08:29:57 +01:00
benoitc
88cde80c9f remove spurious print 2012-03-01 08:24:00 +01:00
benoitc
a3a655928d fix keepalive response.
The expected response for keeep alive connections are Connection:
keep-alive not keepalive.
2012-03-01 08:22:58 +01:00
benoitc
1319543448 use the cached app. 2012-03-01 08:02:15 +01:00
benoitc
005b70ac23 sync doc 2012-02-29 14:12:10 +01:00
benoitc
ce907348ef close #306 .
We badly called this function `start_server` when it should have been
`when_ready` .
2012-02-29 14:09:49 +01:00
benoitc
4a0ba5c2e5 fix upgrade header. close #298 .
We were supposed to handled the upgrade header there but the way we
extend the default headers imply we were sending 2 connections headers.
Instead we are now testing if the upgrade header is present and keep it.
2012-02-25 20:10:42 +01:00
benoitc
f3c3357c85 fix compass import & add a style for the code tag. 2012-02-25 15:37:48 +01:00
benoitc
6b74987b77 fix index style 2012-02-25 15:33:08 +01:00
benoitc
490da227a0 regen doc & fix it 2012-02-25 15:31:46 +01:00
benoitc
5afb58c91d update news for next release. 2012-02-25 15:23:12 +01:00
benoitc
86ea0c6f8d remove this buggy & useless check 2012-02-25 15:14:11 +01:00
benoitc
5a7c756a98 close #304 .
Intoduce a change in log access format:

- request headers are now added to the log format using the
  {HeaderName}i variable
- response headers are now handled using the {HeaderName}o variables
- headers name are insensitive
- non existent keys in the log access format are replaced by '-'
2012-02-25 14:44:38 +01:00
benoitc
125d9f1551 add possibility to add the request PID to the access logs. 2012-02-25 12:18:33 +01:00
benoitc
c7a0af5d3a make the django monkey patching less intrusive.
only patch in the `run_gunicorn` command.
2012-02-21 16:48:43 +01:00
benoitc
fa341c6531 pyflakes pass. 2012-02-21 14:53:17 +01:00
benoitc
52a9e2e9a2 simplify the patch. 2012-02-21 14:38:59 +01:00
benoitc
b0c542e80e just pass 2012-02-21 14:31:58 +01:00
benoitc
f2b97f029e add missing file. 2012-02-21 14:26:55 +01:00
benoitc
3902729ff8 remove spurious print. 2012-02-21 14:26:05 +01:00
benoitc
161c8c03cb monkey patch django. close #293 .
This patch make sure that we use real threads to get the ident which is
going to happen if we are using gevent or eventlet.
2012-02-21 14:24:55 +01:00
benoitc
b2c83b2bc3 fix whitespaces. 2012-02-21 14:23:52 +01:00
benoitc
f67993eb87 fix testing.
Note: it was also a good way to test HUP on master. worked like a charm.
2012-02-21 12:34:50 +01:00
benoitc
2d2260dd19 and remove useless print 2012-02-21 12:20:40 +01:00
benoitc
bea6e3b97f remove unecessary imports. 2012-02-21 12:19:42 +01:00
benoitc
a77a166b31 don't validate models and activate translation in run_gunicorn command.
close #293.

We already do that in the worker application load. Not doing it here
should fix application reload and issue with threads.
.
2012-02-21 11:21:58 +01:00
benoitc
98f57f3daf add admin so we can test with SQL eventually 2012-02-20 22:17:36 +01:00
benoitc
613437961e remove spurious print
shouldn't have been here.
2012-02-20 19:53:18 +01:00
benoitc
4ad614f46d add Kristian Glass to the THANKS. 2012-02-20 19:51:56 +01:00
Kristian Glass
415c5145c6 Updated docstring in config.py for the access_log_format directive to cover all of the atoms used in the default format 2012-02-20 19:51:19 +01:00
benoitc
f281e6da46 bump to 0.14.0 2012-02-20 11:33:25 +01:00
benoitc
81542622bb add Dan Callaghan to the THANKS 2012-02-20 11:25:05 +01:00
benoitc
be19f414ae close #294 .
Thanks for the patch
2012-02-20 11:23:58 +01:00
benoitc
cc26270783 close #170 .
add --check-config option to check the config and app loading.
2012-02-20 11:13:59 +01:00
benoitc
7a1c58f236 test number of headers fields and size.
Add --limit-request-fields (limit_request_fields) and
--limit-request-field-size (limit-request-field-size) options.

- limit_request_fields:

    Value is a number from 0 (unlimited) to 32768. This parameter is
    used to limit the number of headers in a request to prevent DDOS
    attack. Used with the `limit_request_field_size` it allows more
    safety.

- limit_request_field_size:

    Value is a number from 0 (unlimited) to 8190. to set the limit
    on the allowed size of an HTTP request header field.
2012-02-20 10:36:13 +01:00
benoitc
b7b0979ad9 check if Request Line is too large.
You can now pass the parameter --limit-request-line or set the
limit_request_line in your configuration file to set the max size of the
request line in bytes.

This parameter is used to limit the allowed size of a client's HTTP
request-line. Since the request-line consists of the HTTP method, URI,
and protocol version, this directive places a restriction on the length
of a request-URI allowed for a request on the server. A server needs
this value to be large enough to hold any of its resource names,
including any information that might be passed in the query part of a
GET request. By default this value is 4094 and can't be larger than
8190.

This parameter can be used to prevent any DDOS attack.
2012-02-20 09:56:06 +01:00
benoitc
6766c14793 pass config to the http parser. 2012-02-20 07:02:55 +01:00
benoitc
613378529b close #297 .
When the path starts with //, urlsplit considers it as a relative uri
while the RDF says it shouldnt (
http://www.w3.org/Protocols/rfc2616/rfc2616-sec5.html#sec5.1.2).

While I'm remove unncessary tests on netloc. The path never contains a
netloc or port.
2012-02-20 06:06:07 +01:00
benoitc
8e185d38d0 shouldn't be here. 2012-02-19 22:11:39 +01:00
benoitc
fd3fae1afd add app to test django 1.4 2012-02-19 22:09:32 +01:00