0

I have a SPDY enabled NGINX front end server which is acting as a proxy to a couple of IIS backend servers. SPDY works awesome when using either Chrome, Opera Next or Firefox but when I load my sites on IE11 SPDY wont work at all:

URL                        Protocol Method Result  Type     Received    Taken   Initiator
https://********index.php   HTTPS    GET    200  text/html   5.65 KB    78 ms   refresh

Relevant NGINX config:

http{
  server_tokens off;
  add_header X-Frame-Options SAMEORIGIN;
  add_header X-Content-Type-Options nosniff;
  add_header X-XSS-Protection "1; mode=block";
  gzip_disable "msie6";
  gzip_min_length 1100;
  gzip_buffers 16 8k;
  gzip_proxied any;
  gzip_http_version 1.1;
  gzip_types text/plain application/xml text/css text/js text/xml application/x-javascript text/javascript application/json application/xml+rss;
  add_header Strict-Transport-Security max-age=31536000;

  server {
    listen                  443 ssl spdy;
    server_name             #####;
    ssl_session_cache       shared:SSL:50m;
    ssl_session_timeout     20m;
    ssl_stapling            on;
    ssl_dhparam             /#####.pem;
    client_max_body_size    20M;
    proxy_set_header        Host $host;
    proxy_set_header        X-Real-IP $remote_addr;
    proxy_pass_header       Set-Cookie;
    proxy_pass_header       P3P;
    ssl_certificate         /########.crt;
    ssl_certificate_key     /########.key;
    ssl_protocols           TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers       on;
    ssl_ciphers             "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS";
    client_body_buffer_size    128k;
    proxy_buffering            on;
    proxy_buffers              8 8k;
    proxy_buffer_size          8k;
    proxy_busy_buffers_size    16k;
    proxy_temp_file_write_size 1024m;


    location / {
      proxy_set_header      X-Forwarded-Proto $scheme;
      proxy_pass            http://load_balancers;
      proxy_next_upstream   error timeout invalid_header http_500 http_502 http_503 http_504;
      proxy_pass_header     Set-Cookie;
      proxy_pass_header     P3P;
      proxy_set_header      Host            $host;
      proxy_set_header      X-Real-IP       $remote_addr;
      proxy_set_header      X-Forwarded-For $proxy_add_x_forwarded_for;
      add_header            Front-End-Https   on;
      proxy_redirect        off;

     }
    ...
    }

In fact IE11 will also abort some requests out of the blue. My NGINX version is 1.7.3 and its running on CentOS 6.

I have dealing with this issue and tryed to research by my own but it seems to be a particular problem at this point.

Thanks in advance, any idea will be apreciated.

Solrac
  • 448
  • 4
  • 13
  • Can you just confirm that this is tested with an IE11 version that does support SPDY in the first place (afaik, IE11 on Windows8+)? – Håkan Lindqvist Jul 16 '14 at 17:46
  • The wikipedia entry on SPDY mentioned: *Internet Explorer 11 added support for SPDY version 3, but not for the Windows 7 version. A problem experienced by some users of Windows 8.1 and Internet Explorer 11 is that on initial loading, Google says "Page not found" but on reloading, it is fine.* which sounds similar... – HBruijn Jul 16 '14 at 17:46
  • 1
    I confirm I'm running Win 8.1 + IE11 and I can see Facebook for example, using SPDY protocol in the F12 Developer Tools window. – Solrac Jul 16 '14 at 17:51
  • @HBruijn Indeed it does, but I do not experience this issue when using other sites so far plus my site is beign loaded with HTTPS, not SPDY. – Solrac Jul 16 '14 at 17:56

1 Answers1

0

Internet Explorer 11 doesn't support SPDY/3.1, which is implemented in nginx 1.7.3. That's why it can't work with nginx over SPDY.

Note that SPDY/3 and SPDY/3.1 are mutually incompatible.

VBart
  • 8,159
  • 3
  • 24
  • 25
  • IE11 SPDY/3.1 feature request status https://connect.microsoft.com/IE/feedbackdetail/view/912824 – Giovanni Tirloni Sep 06 '14 at 11:54
  • 1
    @gtirloni An update; the final MSFT's answer is **Won't fix** for the feature request (as after IE 11 SPDY support will be dropped for HTTP/2) – yagmoth555 Jun 10 '16 at 16:50