Einzelnen Beitrag anzeigen
  #3 (permalink)  
Alt 02-05-2019, 17:55
walkerr
 Registrierter Benutzer
Links : Onlinestatus : walkerr ist offline
Registriert seit: May 2019
Beiträge: 1
walkerr befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Iv0ry Beitrag anzeigen
Hi Leute,

wir haben eine private Domain (Hauptnutzung E-Mail) und einem kleinen Blog (bei Strato falls relevant). Dort liegt ebenfalls ein Link (soll dann check.php sein) zu unserem "Intranet" (Einer Website auf einem lokalen Webserver im Heimnetz (RasPi) mit lokalen Links und Adressen. Da der kleine Raspi nicht immer läuft, läuft die Intranetseite ebenfalls auf meinem Home-NAS (Webserver). Was ich nun möchte ist, wenn ich auf der Interentseite auf den Link zum Intranet klicke, entweder, wenn Online der RasPi antwortet oder (backup) das NAS. Also im Prinzip ein Check ob lokaler Server (Rapsi) im Heimnetz online, wenn ja Seite anzeigen andernfalls auf NAS weiterleiten (beides immer Port 80 im Heimnetz).

Raspi: 192.168.1.1
NAS: 192.168.1.2

Ich hatte dazu folgende Scripts gefunden, aber leider scheint keins zu funktionieren, habt Ihr eine Idee?


Die robots.txt existiert auf beiden Servern.

1)
Code:
<?php
//$srv1= "192.168.1.1";
$srv1 = "www.seitegibtesnicht.de/"; // zum testen
$srv2 = "192.168.1.2"; 
$check = @fsockopen($srv1, 80);
if ($check) {
@fclose($check);
header("Location: http://$srv1");
exit;
}else{
header("Location: http://$srv2");
}
?>
2)
Code:
<?php
if (require("http://192.168.1.1/robots.txt")) {
  header ('Location: http://192.168.1.1/');
}
elseif (require("http://192.168.1.2/robots.txt")) {
  header ('Location: http://192.168.1.2/');
}
else {
  echo '
   // Fehlermeldung 
 ';
}
?>
3)
Code:
<?php
$check_url = "http://192.168.1.1/robots.txt"; // URL zum überprüfen
$connection = @fsockopen ($check_url, 80);
 
if (!$connection)
{
header( "refresh:5;url=http://192.168.1.2" );
echo 'Sie werden weitergeleitet, wenn nicht klicken Sie dazu <a href="http://192.168.1.2"> hier<aa ';
}
else
{
header( "refresh:5;url=http://192.168.1.1" );
echo 'Seite ist wieder erreichbar....';
exit();
}
?>
4)
Code:
<? 
$webhoster = "http://192.168.1.1/"; 
$heimrechner = "http://192.168.1.196/"; 
$testfile = "robots.txt"; 
$test=@fopen ($heimrechner.$testfile,"r"); 
if($test) { 
header("Location: $webhoster"); 
} else { 
header("Location: $heimrechner"); 
} 
?>
5)
Code:
<?
//$srv1 = "www.seitegibtesnicht.de/"; // zum testen
$srv1 = "192.168.1.1"; // zum testen
$srv2 = "192.168.1.2"; 
if($socket =@ fsockopen($srv1, 80, $errno, $errstr, 3)) { // timeout nach 3 sec
header("Location: http://$srv1");
fclose($socket);
} else {
header("Location: http://$srv2");
} ?>
:freak

Es will aber einfach nicht funktionieren, oder es wird immer stur die 192.168.1.2 geöffnet. Ich brauche wirklich Eure Hilfe zur Lösung. :-(

Gruß
Ive
Ihre Strategie gefällt mir besonders gut. Einige Methoden können jedoch entwickelt werden. Wir müssen einen anderen Weg versuchen. Bei Interesse können Sie ab 192.168.1.1 verschiedene Methoden erlernen.
Mit Zitat antworten