We need to know which version of varnish.

 

Which  exact version of IE7? Does the page call external components?
Anything https? Are the back ends the same? Is there a load balancer?

 

Stefan Caunter 

Operations

Torstar Digital

m: (416) 561-4871

 

 

From: [email protected]
[mailto:[email protected]] On Behalf Of Bacion, Ray
Sent: February-03-11 2:01 PM
To: '[email protected]'
Cc: OA.Lampadmins
Subject: Varnish not completely loading page from IE 7 browser

 

Hello, we have installed Varnish on one of our RedHat 5 Linux machines.
I have pasted the configuration below.    I did remove the real
hostnames and IP addresses from the configuration.

 

The configuration works fine with Mozilla for sites I have defined, but
on IE 7 the "hostname1" site does not completely load.   I see the
favicon.ico and the title of the page, but the site continues to load
without completing or sometimes completing after a long time (minute
plus) to load.   The second site "shared_73_165" loads just fine.  

 

Please note a week ago I had the same sites defined, but IE had problems
loading the "shared_73_165" site but loaded the "hostname1" site just
fine.   I assume there is some slight difference in the configuration
between this week and last to make this change occur, but I don't know
what it would be.    Mozilla has always loaded both sites fine.

 

 

I am having trouble identifying the root cause of the problem.   Can
anyone help me with trying to determine why IE 7 is taking so long to
complete the loading of the page if it completes at all?   

 

I can also add that a when I look at the varnishncsa output I see that
with IE 7 that not all of the elements on the HTML page are being
requested, but through Mozilla I do see all the requests.   I can also
tell you both sites work fine if I bypass Varnish.   It also does appear
that IE 8 has the same issue although I have not tested with it as much
as I have IE 7.

 

Any help that someone can provide would be appreciated?

 

 

 

backend hostname1

{

 
.host="xxx.xxx.xxx.xxx";.port="80";.max_connections=200;.connect_timeout
=10s;.first_byte_timeout=10s;

  .between_bytes_timeout=10s;

}

backend shared_73_165

{

 
.host="xxx.xxx.xxx.xxx";.port="80";.max_connections=200;.connect_timeout
=10s;.first_byte_timeout=10s;

  .between_bytes_timeout=10s;

}

 

sub vcl_recv

{

  # Set Backend Server

  if (req.http.host ~ "^hostname1.com"     || req.http.host ~
"^test.hostname1.com")              { set req.backend = hostname1;  }

  else
{ set req.backend = shared_73_165; }

 

  # Set HTTP Header NS-Client-IP so Apache can log client's IP address.

  set req.http.NS-Client-IP = client.ip;

 

  # If HTTP Header Cache-Contro="no-cache" then purge any cache page
that may exist for that URL and pass request on.

  if (req.http.Cache-Control ~ "no-cache") { purge_url(req.url);
return(pass); }

 

  # If request is not a valid HTTP Method pipe it to the backend it is
not cacheable.

  if (req.request!="GET"    && req.request!="HEAD"    &&
req.request!="PUT"     && req.request!="POST" &&

      req.request!="TRACE"  && req.request!="OPTIONS" &&
req.request!="DELETE")

  { return (pipe); }  /*Non-RFC2616*/

 

  # If request is not a GET or a HEAD then pass it through since its not
cacheable.

  if (req.request!="GET" || req.request!="HEAD") { return (pass); }

 

  # Unset cookies on Drupal specific files that should be cached.

  if (req.url ~ "^/(files|misc|sites|themes|modules)/" || req.url ~
"\.(txt|ico)$") { unset req.http.Cookie; }

 

  # If request requires Authentication or has a Cookie then it is not
cacheable.

  if (req.http.Authorization || req.http.Cookie) { return (pass); }

 

  # Normalize and compress content if Encoding starts with gzip or
defalte but do not compress binary files.

  # @see:  http://varnish.projects.linpro.no/wiki/FAQ/Compression

  if (req.http.Accept-Encoding) {

    if    (req.url ~ "\.(jpg|png|gif|gz|tgz|bz2|tbz|mp3|ogg)$") { remove
req.http.Accept-Encoding; }

    elsif (req.http.Accept-Encoding ~ "gzip")   {set
req.http.Accept-Encoding = "gzip"; }

    elsif (req.http.Accept-Encoding ~ "deflate"){set
req.http.Accept-Encoding = "deflate"; }

    else                                        {unset
req.http.Accept-Encoding; }

  }

 

  # If requested page is currently being processed on another thread to
a backend server,  server cached page if its not older than 30s.

  set req.grace = 30s;

 

  # Fall back to the default vcl_recv which will call the
return(lookup);

}

 

sub vcl_pipe

{

  set req.http.connection = "close";

  # Fall back to the default vcl_pipe which will call return(pipe);

}

 

sub vcl_fetch

{

  # If the response from the backend is not a 200, 203, 300, 301, 302,
404 or 410.

  if (!beresp.cacheable) { return (pass); }

}

-------------------------------------------------------- 
Raymond Bacion 

 

ITSD Operating System Group 
Phone: (573) 522-1468 
Fax :    (573) 522-1384 
Email:  [email protected] 

 

------------------------------------------------------- 

 

 

 

_______________________________________________
varnish-misc mailing list
[email protected]
http://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc

Reply via email to