Getting more info.
I've now compared the html source from a working page and a not-working page.
It looks like the non-working page doesn't load everything up: it stops half way through.
Broken page:
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<!--
-->
<title>Zimbra Administration</title>
<link rel="ICON" type="image/gif" href="/img/loRes/logo/favicon.gif"/>
<link rel="SHORTCUT ICON" href="/img/loRes/logo/favicon.ico"/>
<script>
appContextPath = "/zimbraAdmin";
appCurrentSkin = "thehub";
</script>
<script type="text/javascript" src="/zimbraAdmin/js/msgs/I18nMsg,AjxMsg,ZMsg,ZaMsg.js.zgz?v=061115172420"></script>
<style type="text/css">
<!--
@import url(/zimbraAdmin/img/loRes/imgs.css?v=061115172420);
@import url(/zimbraAdmin/img/loRes/skins/thehub/thehub.css?v=061115172420);
@import url(/zimbraAdmin/css/dwt,common,zmadmin,login,msgview,spellcheck,skin.css?v=061115172420);
-->
</style>
<script type="text/javascript" src="/zimbraAdmin/js/Ajax_all.js.zgz?v=061115172420"></script>
<script type="text/javascript" src="/zimbraAdmin/js/ZimbraAdmin_all.js.zgz?v=061115172420"></script>
<script type="text/javascript" language="JavaScript">
function launch() {
AjxWindowOpener.HELPER_URL = "/zimbraAdmin/public/frameOpenerHelper.jsp"
DBG = new AjxDebug(AjxDebug.NONE, null, false);
ACCESS_RIGHTS = new Object();
// figure out the debug level
if (location.search && (location.search.indexOf("debug=") != -1)) {
var m = location.search.match(/debug=(\w+)/);
if (m && m.length) {
var level = m[1];
if (level == 't') {
DBG.showTiming(true);
} else {
DBG.setDebugLevel(level);
}
}
}
ZaZimbraAdmin.run(document.domain);
}
// START DOMContentLoaded
// Mozilla and Opera 9 expose the event we could use
if (document.addEventListener) {
document.addEventListener("DOMContentLoaded", launch, null);
// mainly for Opera 8.5, won't be fired if DOMContentLoaded fired already.
document.addEventListener("load", launch, null);
}
// for Internet Explorer. readyState will not be achieved on init call
if (AjxEnv.isIE && AjxEnv.isWindows) {
document.attachEvent("onreadystatechange", function(e) {
if (document.readyState == "complete") {
launch();
}
});
}
if (/(WebKit|khtml)/i.test(navigator.userAgent)) { // sniff
var _timer = setInterval(function() {
if (/loaded|complete/.test(document.readyState)) {
launch();
// call the onload handler
}
}, 10);
}
// END DOMContentLoaded
AjxCore.addOnloadListener(launch);
</script>
</head>
<body>
<script type="text/javascript" language="JavaScript">
var zImgLoading = (new Date()).getTime();
</script>
<div style='position:absolute;width:1px;height:1px;visibility:hidden;overflow:hidden;'>
<img alt="" src='/zimbraAdmin/img/loRes/table.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/dwt.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/tab_border.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/tab_border__H.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/tab_border__V.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/TabHover__BG.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/TabDis__BG.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/Tab__BG.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/TabSel__BG.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/htmlEdit.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/calendar.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/CalendarDayGrid__BG.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/im.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/contacts.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/large.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/notes.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/tag.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/mail.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/doctypes.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/arrows.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/tasks.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/common.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/admin.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/logo/ZimbraIcon.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/logo/favicon.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/translate/DataUnavailable.gif'>
<img alt="" src='/zimbraAdmin/img/loRes/logo/favicon.ico'>
</div>
<script type="text/javascript" language="JavaScript">
zImgLoading = (new Date()).getTime() - zImgLoading;
</script> The working page has lots below this, including loading up the skin. So the question is why the server isn't serving up the whole page in some cases.