Hi Guys, I have a problem here. My website, www.tokopedia.com use nginx 1.5.10 with gzip activated. Some of our users got white screen of death (wsod). It turns out that it is because of gzip. These are what I found :
User report the got wsod. I chat with them, asked them to response header. But the header is different from what we set. This is the result :
This is the corrent response header :
========================
Cache-control:max-age=14400
Connection:close
Content-Encoding:gzip
Content-Type:text/html; charset=utf-8
Date:Mon, 24 Feb 2014 15:06:20 GMT
Expires:Mon, 24 Feb 2014 19:06:52 GMT
Pragma:no-cache
Server:nginx
Set-Cookie:_SID_Tokopedia_=c52cd95c9d4b11e3b16d11f55476c0ce; domain=.tokopedia.com; path=/; expires=Tue, 25-Feb-2014 15:06:52 GMT
Vary:Accept-Encoding
This is user response header
========================
Cache-control: private, no-cache, no-store, must-revalidate, post-check=0, pre-check=0
Connection:close
Content-Type:text/html; charset=utf-8
Date:Mon, 24 Feb 2014 05:40:31 GMT
Expires:Mon, 17 Aug 2009 00:00:00 GMT
Pragma:no-cache
Server:nginx
Set-Cookie:_SID_Tokopedia_=70531bd49d1511e3adeb5c5c41ecde91; domain=.tokopedia.com; path=/; expires=Mon, 24-Feb-2014 06:41:02 GMT
Transfer-Encoding:chunked
Vary:Accept-Encoding
the different is that the correct 1 has Content-Encoding:gzip and no Transfer-Encoding:chunked. But on user side they have Transfer-Encoding:chunked but no Content-Encoding:gzip.
And then I tried to disabled gzip and then user can access our website without problems.
So can you guys help me with solutions? I think about to put this of nginx conf :
if($remote_addr = 'xxx') {gzip off;}
but the problem is on user specific device, if they use other device with the same internet connection, they can access without problem.
User report the got wsod. I chat with them, asked them to response header. But the header is different from what we set. This is the result :
This is the corrent response header :
========================
Cache-control:max-age=14400
Connection:close
Content-Encoding:gzip
Content-Type:text/html; charset=utf-8
Date:Mon, 24 Feb 2014 15:06:20 GMT
Expires:Mon, 24 Feb 2014 19:06:52 GMT
Pragma:no-cache
Server:nginx
Set-Cookie:_SID_Tokopedia_=c52cd95c9d4b11e3b16d11f55476c0ce; domain=.tokopedia.com; path=/; expires=Tue, 25-Feb-2014 15:06:52 GMT
Vary:Accept-Encoding
This is user response header
========================
Cache-control: private, no-cache, no-store, must-revalidate, post-check=0, pre-check=0
Connection:close
Content-Type:text/html; charset=utf-8
Date:Mon, 24 Feb 2014 05:40:31 GMT
Expires:Mon, 17 Aug 2009 00:00:00 GMT
Pragma:no-cache
Server:nginx
Set-Cookie:_SID_Tokopedia_=70531bd49d1511e3adeb5c5c41ecde91; domain=.tokopedia.com; path=/; expires=Mon, 24-Feb-2014 06:41:02 GMT
Transfer-Encoding:chunked
Vary:Accept-Encoding
the different is that the correct 1 has Content-Encoding:gzip and no Transfer-Encoding:chunked. But on user side they have Transfer-Encoding:chunked but no Content-Encoding:gzip.
And then I tried to disabled gzip and then user can access our website without problems.
So can you guys help me with solutions? I think about to put this of nginx conf :
if($remote_addr = 'xxx') {gzip off;}
but the problem is on user specific device, if they use other device with the same internet connection, they can access without problem.