jag behöver ett skript för att kolla om min server är uppe/nere
jag hade tänkt att besökaren först ska komma till en sida på mitt teliakonto, den sida ska känna av om min server [min dator] är igång, isåfall ska besökaren skickas dit, om inte så ska en annan sida visas som visar att servern inte är igång
isåfall behöver du nog lägga ett script på servern (teliakontot).. ett asp/cgi-script som typ pingar din server och redirectar dit om tiden är under ett visst värde. eller att du gör något på din egen server som scriptet på teliakontot kan kolla, en vanlig textfil eller vadsomhelst. om scriptet kan öppna den så redirectar den.. lite flum så här på måndag förmiddag men du kan nog knappast lösa det med html/css =)
ha en bra dag!
// Joakim
------------------
Joakim Johansson
Vice VD / tekniker
Stereo Communication
Se till att dina respektive webbplatsers startsidor har "frame-breakers".
Bygg en frames-lösning som laddar din egen webbservers startsida i en frame eller iframe, men som redirectar till Teliasidan efter en viss timeout.
t.ex. såhär:
--- mystartpage.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Startpage@my.server</title>
<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
</head>
<body lang="en" onload="if (top.location.href!=this.location.href) top.location.href=this.location.href;">
<p>
Startpage at my own server.
</p>
</body>
</html>
--- myteliastartpage.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Startpage@my.telia.account</title>
<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
</head>
<body lang="en" onload="if (top.location.href!=this.location.href) top.location.href=this.location.href;">
<p>
Start page at my telia account...
</p>
</body>
</html>
--- myindexpage.html (utpekad på teliakontot då förståss... ;)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Load page with fallback to another site</title>
<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="Refresh" content="5;URL=myteliastartpage.html" />
</head>
<body lang="en">
<p>
Please wait... Loading site...
<iframe src="mystartpage.html" style="width:0;height:0;border:none"></iframe>
</p>
</body>
</html>
Jag använde <iframe> bara för att minska ner exemplet... Du kan använda metodiken på en "vanlig" frameset-sida också ;) (och det *behöver* inte vara XHTML heller;) )
Tack, men det verkar inte funka riktigt.
Är all kod nödvändig? jag menar är det inte bara följande kod som behövs?
defaultserver.html
<html>
<head>
<script language=JavaScript>
if (top.frames.length)top.location=self.document.location;
</script>
</head>
detta är sidan som ligger på min server
</html>
defaulttelia.html
<html>
<head>
<script language=JavaScript>
if (top.frames.length)top.location=self.document.location;
</script>
</head>
Sidan på teliaservern, som meddelar att servern inte kunde nås
</html>
till följande pga av ett fel som uppstod vid laddning av skriptet, det är väl ingen skillnad?
<script language=JavaScript>
if (top.frames.length)top.location=self.document.location;
</script>
När jag laddar starttelia.html och servern är uppe så kommer jag till serverns startsida. Om servern istället är nere så fortsätter den att försöka ladda serversidan, även efter 5 sekunder, men när man trycker på Stopp i webbläsaren och väntar 5 sekunder, då laddas defaulttelia.html (felsidan på telia)?
Jag gjorde exakt så som det står i inlägget före men det kom upp en del felmeddelanden då så jag försökte plocka ut det viktigaste, eller gör jag fel?
Nån som vet vad jag gör för fel
Hmmm...
Här kommer en frame-baserad version av samma exempel...
Ha en sida som informerar om att laddning sker, och låt denna redirecta till din teliastartsida (som sedan i sin tur har en framebreaker... Se nedan)
--- myloadinfo.html
Skapa en framesetsida som laddar loadinfosidan i en synlig frame, och din webbplats sida i en frame som hamnar utanför kanten...
-- Sitens startsida:
<html>
<head>
<title>Load page with fallback to another site - another variant</title>
</head>
<frameset rows="100%,10">
<frame src="myloadinfo.html">
<frame src="http://myserver.wherever.net/mystartpage.html">
</frameset>
</html>
lägg nu in en framebreaker på båda dina startsidor...
!!!OBS!!!!
-------
Jag brukar avråda folk från att använda "standard"-framebrytaren
<script language"Javascript">
<!--
if (top.location.href!=this.location.href)
top.location.href=this.location.href;
// -->
</script>
pga en elak cache-bugg i NN4 för Windows (*alla* versioner) som gör att NN4 skriver in harangen <h3>Transfer interrupted</h3> (eller <h3>Överföring avbryts</h3> om man kör en svensk NN4) någonstans varsomhelst i sid-koden och sedan glatt lagrar detta i cachen om sidladdningen avbryts innan den hunnit renderas... Och varsomhelst kan t.ex. vara *inuti* en av dina taggar, eller i din text. Men OK - den funkar om man har tur (eller en extremt kort sida ;) !
Kolla själv på t.ex. sidan http://jarvklo.net/tests/nnbugg.html , som är ett frameset som laddar sidan badframebreaker.html. Gör sedan View page source, så ser du vad jag menar. Ladda sedan sidan i IE eller NN6, så der du den som den *ska* se ut ;)
Hursomhelst:
Jag har verifierat bägge exemplen mot en server som svarar IP-mässigt, men där webbservern är nere... Månne det hela är omöjligt om servern är helt borta från nätet...