Evan Phoenix
a2b02294c8
Remove the default Content-Type: text/plain
2015-07-14 11:45:33 -07:00
Evan Phoenix
537bc21593
Remove rack dependency. Fixes #705
...
Because frameworks like rails dependent on rack, if puma truly wants to
be able to reload new code and thus new versions of rails, it has to be
able to reload rack as well.
Having a dependency on rack held by puma prevented that from happening
and so that dependency has been removed.
2015-07-14 10:28:59 -07:00
Julian Langschaedel
e8d25b30f3
ssl: Add Client Side Certificate Auth
...
Add Client Side Certificate Auth feature and handling to puma's MiniSSL. Also exposes SSL errors to puma/apps.
compatibility notes: MRI only
shell example:
puma -b 'ssl://127.0.0.1:9292?key=path_to_key&cert=path_to_cert&ca=path_to_ca&verify_mode=force_peer'
code example: (examples/client_side_ssl)
app = proc {|env| p env['puma.peercert']; [200, {}, ["hey"]] }
events = SSLEvents.new($stdout, $stderr)
server = Puma::Server.new(app, events)
admin_context = Puma::MiniSSL::Context.new
admin_context.key = KEY_PATH
admin_context.cert = CERT_PATH
admin_context.ca = CA_CERT_PATH
admin_context.verify_mode = Puma::MiniSSL::VERIFY_PEER | Puma::MiniSSL::VERIFY_FAIL_IF_NO_PEER_CERT
server.add_ssl_listener("0.0.0.0", ADMIN_PORT, admin_context)
server.min_threads = MIN_THREADS
server.max_threads = MAX_THREADS
server.persistent_timeout = IDLE_TIMEOUT
server.run.join
additional credits: Andy Alness <andy.alness@gmail.com>
2015-06-06 23:15:00 +02:00
Evan Phoenix
24863bd7e5
Avoid the deprecated
2015-01-20 10:38:09 -08:00
Evan Phoenix
d13903ea51
Advertise HTTPS properly after a hot restart
2015-01-20 10:35:22 -08:00
Evan Phoenix
9fc65acee7
Set a default REMOTE_ADDR to avoid using peeraddr on unix sockets. Fixes #583
2015-01-20 10:34:14 -08:00
Evan Phoenix
db4cb8443d
Handle spaces in the path properly. Fixes #622
2015-01-20 10:19:52 -08:00
Evan Phoenix
5f0da667e8
Add mode as an additional bind option to unix sockets. Fixes #630
2015-01-20 10:14:50 -08:00
Gu1
264a9a4e58
Allow binding to ipv6 addresses for ssl URIs
...
Same fixe as for TCP URIs, introduced in 868671e2bc
2014-11-24 00:59:20 +01:00
Daniel Marcotte
c54807700c
Add SSL support for JRuby
...
- Implement MiniSSL for JRuby
- Modify `Binder` and `MiniSSL::Context` to to accommodate the fact
that Java SSL demands a java keystore rather than a key/cert pair
- Change the MiniSSL native extension interface to take a
`MiniSSL::Context` rather than a key/cert pair so that each extension
can grab keys off the context as appropriate
2014-05-05 14:30:15 -07:00
Evan Phoenix
4b866671dd
JRuby raises IOError if the socket is there. Fixes #377
2014-01-25 18:34:12 -08:00
Evan Phoenix
43b2b7342d
Expose latency and listen backlog via bind query. Fixes #370
2014-01-25 17:02:32 -08:00
Evan Phoenix
faeceed625
File.exists? => File.exist?
2014-01-25 14:50:40 -08:00
Evan Phoenix
f124bc21cd
Add ability to cleanup stale unix sockets
2013-07-04 15:57:49 -07:00
Evan Phoenix
93ed2480d8
Merge pull request #231 from urbaniak/socket-activation
...
Socket activation
2013-05-31 09:52:12 -07:00
Krzysztof Urbaniak
9b619085ff
after socket activation remove LISTEN_FDS and LISTEN_PID environment variables
2013-04-05 01:44:30 +02:00
Krzysztof Urbaniak
32088ec6ed
systemd socket activation
2013-04-05 01:41:22 +02:00
ytti
868671e2bc
allow binding to IPv6 addresses
...
this fails, and is standard:
puma -b 'tcp://[2001:6e8:288::a]:9999'
this fails. and is non-standard but potentially acceptable to puma as port is mandatory argument:
puma -b 'tcp://2001:6e8:288:🅰️ 9999'
commit fixes the first issue, but is ghetto as hell, should be 1.8 .. 2.0 friendly
2013-03-25 11:06:00 +02:00
kazjote
911709fdcf
Set Rack run_once to false
2013-03-08 17:57:25 +01:00
Evan Phoenix
963cbfc813
Disable worker processes (jruby, win32) and SSL (jruby)
...
JRuby has at present too many bugs to do nonblocking SSL properly. Until
MiniSSL has JRuby support, SSL support has to be disabled.
2012-09-10 17:14:35 -07:00
Evan Phoenix
faf7f9916c
Merge branch 'minissl' into just-dash-w
...
Conflicts:
ext/puma_http11/puma_http11.c
lib/puma/cli.rb
lib/puma/server.rb
2012-09-10 08:41:43 -07:00
Evan Phoenix
3c2f091728
Use proper path for unix socket on inheritance
2012-09-09 15:14:56 -07:00
Evan Phoenix
508b235f54
Refactor come parts between normal and cluster mode
2012-08-02 16:03:52 -06:00