﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	uname	nginx_version
808	Defining http2 without ssl leads to HTTP/1.1 client failure	LPardue@…		"This issue probably relates to support of HTTP/2 over cleartext (h2c). Note that I have successfully tested HTTP/2 over TLS on this server.

I have a simple server setup using an out of the box config, if I use a HTTP/1.1 client then I see what I would expect e.g:

{{{
curl -v http://localhost/index.html
* About to connect() to localhost port 80 (#0)
*   Trying ::1...
* Connection refused
*   Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 80 (#0)
> GET /index.html HTTP/1.1
> User-Agent: curl/7.29.0
> Host: localhost
> Accept: */*
>
< HTTP/1.1 200 OK
< Server: nginx/1.9.5
< Date: Fri, 09 Oct 2015 15:53:40 GMT
< Content-Type: text/html
< Content-Length: 612
< Last-Modified: Wed, 07 Oct 2015 10:41:07 GMT
< Connection: keep-alive
< ETag: ""5614f6c3-264""
< Accept-Ranges: bytes
<
<!DOCTYPE html>
...
* Connection #0 to host localhost left intact
}}}

If I add http2 to the config, e.g. 

{{{
server {
  listen 80 http2;
  server_name localhost;
...
}}}

Then I see this

{{{
curl -v http://localhost/index.html

* About to connect() to localhost port 80 (#0)
*   Trying ::1...
* Connection refused
*   Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 80 (#0)
> GET /index.html HTTP/1.1
> User-Agent: curl/7.29.0
> Host: localhost
> Accept: */*
>
* Connection #0 to host localhost left intact

}}}

Nothing is reported in the server logs.

So my questions are:

* Is h2c supported?
  * If not, why am I allowed to attempt such a configuration without some error/warnings.
  * If so, what am I doing incorrectly? Shouldn't a HTTP/1.1 client continue to work if it offers no upgrade header or ""prior knowledge"" magic?
"	defect	closed	minor		nginx-core	1.9.x		http2		Linux 3.10.0-123.9.3.el7.x86_64 #1 SMP Thu Nov 6 15:06:03 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux	"nginx version: nginx/1.9.5
"
