]
Radim Hatlapatka commented on WFLY-6413:
----------------------------------------
Looking at it a little bit more, there is actually used Range request processing done as
part of {{io.undertow.servlet.handlers.DefaultServlet}}. Where is incorrectly counted
{{Content-Range}} header. I have send PR fixing the issue
[
Range headers do not seem to be handled correctly and prevents video
delivery in Chrome and Safari
--------------------------------------------------------------------------------------------------
Key: WFLY-6413
URL:
https://issues.jboss.org/browse/WFLY-6413
Project: WildFly
Issue Type: Bug
Components: Web (Undertow)
Affects Versions: 10.0.0.Final
Environment: WildFly 10.0.0.Final
Windows 7 or Mac 10.11.3
Java 8
Chrome, Firefox, Safari
Reporter: Jason Holmberg
Assignee: Stuart Douglas
Priority: Blocker
Safari on iOS requires range headers to be able to play video content via HTML5. So
enabling range headers in WildFly should make this happen. It does not. Enabling the
range headers actually prevent Chrome from playing the video content, which previously
worked when the range headers were NOT enabled.
After enabling range headers as described here:
https://developer.jboss.org/message/953058#953058
I made some range requests via `curl` to see what is being returned:
This is the result of a request to *WildFly* with the Range headers enabled:
{noformat}
$ curl -I --range 0-
http://localhost:8880/vidtest/vidtest.mp4
HTTP/1.1 200 OK
Connection: keep-alive
Last-Modified: Thu, 17 Mar 2016 19:15:42 GMT
X-Powered-By: Undertow/1
Server: WildFly/10
Content-Type: video/mp4
Content-Length: 8200890
Date: Fri, 18 Mar 2016 16:59:55 GMT
{noformat}
This is the result of a request to the same content being served from Tomcat 8, no
special config required. *All the browsers can play the content when served from Tomcat
8*:
{noformat}
$ curl -I --range 0-
http://localhost:8080/vidtest/vidtest.mp4
HTTP/1.1 206 Partial Content
Server: Apache-Coyote/1.1
Accept-Ranges: bytes
ETag: W/"8200890-1458232627000"
Last-Modified: Thu, 17 Mar 2016 16:37:07 GMT
Content-Range: bytes 0-8200889/8200890
Content-Type: video/mp4
Content-Length: 8200890
Date: Fri, 18 Mar 2016 17:00:08 GMT
{noformat}
I have created a small project that I have been using to trouble shoot this issue:
https://github.com/slowtrailrunner/html5-vidtest