Okay, ich hab mal mit Ajax und WebSockets rumgespielt und festgestellt, dass beides nicht ohne weiteres funktionieren wird.
Desweiteren hab ich mal wegen dem Caching ein wenig rum probiert und festgestellt, dass es eventuell (das hängt von der Webserver-Konfiguration ab) funktionieren kann.
Die lokale HTML-Datei (diese dient sowohl zum Test ob die Website erreichbar ist, als auch als Fehlermeldung/keineverbindung.htm):
<!doctype html>
<html>
<head>
<script type="text/javascript" src="###js_source###?nocache"></script>
<script type="text/javascript">
window.onload = function() {
if(typeof ###object### == 'undefined') {
document.body.classList.remove('hide');
}
else {
location.href = "###website###";
}
}
</script>
<style type="text/css">
.hide {
visibility: hidden;
}
</style>
</head>
<body class="hide">
###content###
</body>
</html>
Zu der sei nun folgendes gesagt, alles was ###name### ist muss ersetzt werden mit den richtigen Daten.
###website### wird mit der URL zu der geleitet werden soll ersetzt (also wahrscheinlich subdomain.example.org)
###content### wird mit dem Inhalt ersetzt, der die lokale keineverbindung.htm darstellt.
###js_source### und ###object### sind so ziemlich unzertrennlich.
###js_source### wird mit der URL zu einer Javascript-Datei der Webseite ersetzt. Hinzu kommt, dass diese Javascript-Datei igendeine globale Funktion/Variable definieren muss.
###object### wird mit der globalen Funktion/Variable ersetzt.
Nun der Knackpunkt mit dem Caching. Standardmäßig wird nicht gecacht, wenn ein Querystring an die URL angehängt wird (oben ist das ?nocache).
Beispiel:
###website### = http://subdomain.example.org
###content### = ACHTUNG: Die Website ist momentan nicht erreichbar!
###js_source### = http://subdomain.example.org/scripts/js/jquery.js
###object### = $
jquery (und auch andere Frameworks) definiert eine globale Variable names $ somit wird $ definiert, wenn die Webseite erreichbar ist und somit kann dann auch umgeleitet werden.
Am besten einfach mal die Webseite aufrufen und gucken ob im Quelltext irgendas wie <script type="text/javascript" src="*****jquery******"></script>
steht (Beispiel: Quelltext vom SelfHTML-Forum, hier wird auch jquery eingebunden), dann kannst du obiges Beispiel verwenden, WENN src nicht auf einen anderen Server zeigt.
Detailreicher kann ich es nicht erklären, da halt die Informationen zur Website fehlen.
Eine andere Möglichkeit fällt mir nicht ein, wenn man den Server unberührt lässt und nur Javascript verwenden will/kann/darf.
MfG
bubble
If "god" had intended us to drink beer, he would have given us stomachs. - David Daye