Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Cross server markup

by BrowserUk (Pope)
on Nov 15, 2006 at 11:08 UTC ( #584138=monkdiscuss: print w/replies, xml ) Need Help??

Occasionally when refreshing a page (usually RAT), here at PM, the page is displayed, but weirdly. Everything is displayed but (for example), the RAT (Recently Active Threads) page is displayed as:

+/- Questions (Top) mod_perl, getting filename or mime type (A:1)+/- + [pingo] Re: mod_perl, getting filename or mime type + [Joost] Event::RPC -err (A:2/1)+/- [op +ensourcer]

instead of:

+/- Questions (Top) mod_perl, getting filename or mime type (A:1)+/- [pingo] Re: mod_perl, getting filename or mime type [Joost] Event::RPC -err (A:2/1)+/- [opensourcer] ...

Ie. With lots of extra whitespace, the username pushed way over to the right and the colors all screwy.

After the page has mostly loaded and is displayed in the weird state, the status bar shows that it is still waiting for something to be downloaded. This persists for a few seconds before timing out.

I assume that the problem is that I am not receiving some part of the css markup.

The situation will sometimes clear itself after a refresh, but often not. Sometimes it will clear if I go to a different page and then back to RAT. Sometimes, the problem won't go away until I disconnect and reconnect to my ISP.

The problem has been around for a year, maybe two, but only occurs occasionally and generally clears itself, so I just put it down to my using a less popular browser and ignored it.

Today it happened again and I noticed something I had never noticed before. Whatever the browser is waiting for to be downloaded, is being requested from (when I logged onto I went to a command session and attempted to ping and the ping failed. I tried several refreshes and several pings and the situation persisted, so I dis/re-connected to my ISP and tried again. The ping worked immediately and a refresh of RAT immediately cured the problem.

I conclude the real problem is that either my browser, my machine or my ISP has a DNS caching problem--something for me to investigate and try and fix.

However, without professing any expertise for html serving, wouldn't it be better if everything for any given server page was served from the same server?

Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.

Replies are listed 'Best First'.
Re: Cross server markup
by idsfa (Vicar) on Nov 15, 2006 at 15:54 UTC

    This is often caused by IPv6 lookup. If that doesn't do it, you might also like to look at the summary thread.

    (My work DNS is badly broken wrt IPv6, which is how I first found this article)

    The intelligent reader will judge for himself. Without examining the facts fully and fairly, there is no way of knowing whether vox populi is really vox dei, or merely vox asinorum. — Cyrus H. Gordon
Re: Cross server markup
by Anonymous Monk on Nov 15, 2006 at 11:22 UTC
      Anonymous Monk,
      My completely lay guess is that BrowserUk is experiencing two different problems and your pointer only addresses one of them. When PodMaster tried to explain my problem he was wrong at every turn. That doesn't mean he wasn't right about a different problem (which does seem to be BrowserUk's primary issue).

      It still happens to me occassionally and despite continously updating FireFox - the only way to correct it is "by opening a new tab, logging into one of the alternate domain names and closing the original tab." I sure would like to know what the reason for this problem is because it sure is annoying.

      Cheers - L~R

        ++ to jdporter for patching this. I applied the patch earlier today. Now CSS is linked to "/css/..." not "" (this wasn't done before because it doesn't work for people who incorrectly access the site via a non-virtual hostname; but we've since blocked all or most of those accesses anyway because they were a big part of some other problems, it appears).

        We have two web servers (and 1 DB server). It is "random" as to (at any point in time and for a particular user or even particular application) whether a particular (www.)?perlmonks.(org|com|net) hostname will be mapped to the IP address for the 'A' web server or for the 'B' web server.

        The 'A' web server (ever since upgraded FreeBSD) goes out to lunch in a frenzy of swapping from time to time. More recently, the 'B' web server's alias IP address gets blocked for a while1 from time to time.

        So if you were, for example, surfing via and it went to the 'B' web server while went to the 'A' web server, you could have periods where the site would refresh fairly quickly but getting the base CSS would take forever and/or fail. It appears that at least some browsers don't use the cached copy of the CSS if an attempt to fetch a fresh copy fails. Recently Active Threads in particular looks much, much different without the base CSS applied.

        This inconsistency should appear less often now.

        - tye        

        1 The 'B' web server appears up and happy during these times, at least at the times I've checked. I suspect, based on observed timing, that this happens as part of the 'A' web server rebooting in order to recover from the swapping fit. But 'B' IP address stay blocked for a while after the 'A' server has recovered. So several times I've seen the 'A' web server get slower and slower until it is unresponsive, then the 'B' IP address stops working, then the 'A' web server comes back up and works fine, then the 'B' IP address finally gets unblocked.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: monkdiscuss [id://584138]
Approved by Corion
Front-paged by Old_Gray_Bear
[Eily]: you could tie a variable into not having the same value each time, if you like to make people who try to debug your code facepalm
[Corion]: perl -wle 'package o; use overload q("") => sub {warn "str"; ""}, bool => sub{warn "bool"; 1}; package main; my $o={}; bless $o => o; print "Yay" if ($o && !length($o))'
[Corion]: But people writing such code should document the objects they construct and why it makes sense for an object to be invisible as string while being true in a boolean context
[hippo]: That's equal parts clever and horrendous.
[Eily]: the overload version wouldn't return true with "$x" && !length $x though, I guess
[hippo]: The more I look at this code, the more $x is a plain old scalar and the more this condition will never be true. I'm calling it a bug at this point.
[hippo]: Thanks for your input which has soothed my sanity (a little)
[Corion]: Eily: Sure - if you force both things into stringy things, then you break that magic. But that would also mean that you changed the expression, as now $x = 0.00 will be true instead of false as it were before
[Corion]: Ah no, at least in my feeble experiments that doesn't change the meaning
[Corion]: We sell sanity in small packages ;)

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (8)
As of 2017-07-27 13:42 GMT
Find Nodes?
    Voting Booth?
    I came, I saw, I ...

    Results (413 votes). Check out past polls.