|
|
Auteur
|
Message
|
1
|
linux, ça dech
|
|
|
Bonjour,
J'ai un serveur pesonnel (linux debian) sur le quel j'héberge mon site. Mais queleque fois il n'est pas toujours opperationnel à 100% (plantage,..). Dans ce cas il serait intéréssant de créer un script php qui permettrait de rediriger vers un de mes autres sites sur un hebergeur officiel 100% fiable.
Le script devrait ressembler a cela:
(ce script sera hébergé sur un serveur fiable à 100%)
Voilà j'éspère que mon petit example vous aidera
Merci d'avance
benhamster
-->Message édité par benhamster le 02/12/2006 12:55:52<--
|
|
|
|
|
Salut!
De visu, il n'y a pas d'utilitaire PHP pour pinger un serveur autre qu'un serveur de bases de données. Cependant, si tu essayes d'ouvrir un fichier dont tu es certain de l'existance sur le premier serveur, tu peux en déduire que le serveur est HS ou non. Par exemple si le fichier http://www.premiersite.com/index.html existe, essaye de l'ouvrir et si ça plante, tu en déduis que le serveur est probablement HS, donc tu changes la location dans l'en-tête.
@+
-------
Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
Gustave Parking
|
|
linux, ça dech
|
|
|
Slt merci de ta réponse aussi rapide
Mais comment je fais pour dire à php que si ce fichier peut etre accécible je vais dessus, sinon je vais sur un autre ??
PS : j'ai modifié mon premier message
-->Message édité par benhamster le 02/12/2006 13:07:39<--
|
|
|
|
|
si, moi je te le fais:
<?php
$server_principal = 'http://monserver1.com';
$server_alt = 'http://monserver2.com';
if (!system('PING '.$serveur_principal))
{
header ('Location: '.$serveur_alt);
}
else
{
header ('Location: '.$serveur_principal);
}
?>
ca devrait marcher
|
|
|
|
|
|
à remplacer par
-------
Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
Gustave Parking
|
|
linux, ça dech
|
|
|
slt !
Tout fonctionne avec le script de Minus-et-Cortex par contre j'obtiens une erreur avec le script de Beno@
Merci tout le monde!
Je n'aurai pas crus que cela aurait été aussi vite
encore merci
benhamster
|
|
linux, ça dech
|
|
|
slt !
Tout fonctionne avec le script de Minus-et-Cortex par contre j'obtiens une erreur avec le script de Beno@
Merci tout le monde!
Je n'aurai pas cru que cela aurait été aussi vite
encore merci
benhamster
-->Message édité par benhamster le 02/12/2006 14:18:06<--
|
|
|
|
|
on peut avoir l'erreur parce que c'est du écrit a la volée
par contre, celle de Minux-et-Cortex ne marche qu'a partir de php 5.0.0
|
|
|
|
|
Beno@, c'est peut etre: system ("ping $serveur_principal")
A essayer !!
-------
![[:jandre:1] [:jandre:1]](/data/globaldata/usmilies/jandre-1.gif) Il faut mieux en mettre plus que moins
|
|
|
|
linux, ça dech
|
|
|
Bonjour
je rebondis sur ce sujet car je me suis rendu compte qu'avec le script de minus-et-Cortex ne me renvoyait aucune erreur mais me reirigait directement vers le site secondaire
Je crois que le script de Beno@ sera plus prometteux.
quelle est l'erreur
benhamster
merci d'avance
|
|
linux, ça dech
|
|
|
|
|
essaye la proposition que j'ai soulevé dans mon dernier poste.
-------
![[:jandre:1] [:jandre:1]](/data/globaldata/usmilies/jandre-1.gif) Il faut mieux en mettre plus que moins
|
|
linux, ça dech
|
|
|
non j'ai déja tout éssayé ce qui est marqué dans ce sujet
edit : ce fichier est héberger par ifrance si c'est ça le problème il faut me le dire
-->Message édité par benhamster le 27/12/2006 17:49:21<--
|
|
|
|
|
Tient, j'ai trouvé ça. J'ai pas essayé mais interresse toi a ça:
http://www.zdnet.fr/builder/programmation/technologies_web/0,39021000,3916366(...)
-------
![[:jandre:1] [:jandre:1]](/data/globaldata/usmilies/jandre-1.gif) Il faut mieux en mettre plus que moins
|
|
linux, ça dech
|
|
|
slt c'est intéressant mais il faut pear je ne sais pas si il est installé chez ifrance et puis moi je ne serai pas capable de créer un tel code!!!
edit : mon script (qui vien de beno@) :
<?php
$server_principal = 'http://bding.dyndns.org/apache2-default/index.php';
$server_alt = 'http://debled.redby.info/index.php';
if (!system('PING '.$serveur_principal))
{
header ('Location: '.$serveur_alt);
}
else
{
header ('Location: '.$serveur_principal);
}
?>
merci d'avance
benhamster
-->Message édité par benhamster le 27/12/2006 21:24:57<--
|
|
|
|
|
Beno@ a écrit :
par contre, celle de Minux-et-Cortex ne marche qu'a partir de php 5.0.0
Salut!
Comme je n'avais pas vu ce message et qu'il remonte, je tiens juste à préciser que ce que j'ai écrit fonctionne (toutefois en mettant un petit @ devant le fopen) avec PHP 4.3.7 donc avec une version antérieure à 5.0.0
Sinon, tu peux toujours passer par les fonctions socket pour essayer de te connecter à un serveur et si la socket retourne une erreur, alors tu fais ce que tu veux ( http://fr3.php.net/manual/en/function.socket-create.php ).
@+
-->Message édité par Minus-et-Cortex le 27/12/2006 21:51:43<--
-------
Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
Gustave Parking
|
|
linux, ça dech
|
|
|
Slt minus et cortex
j'ai essayé ton script en mettant le @ devant fopen mais il redirige toujours sur mon site personnel. (comme d'habitude)
Ton script ne me retourne cependant aucune erreur
Voici mon script:
merci d'avance
benhamster
|
|
|
|
|
benhamster a écrit :
Slt minus et cortex
j'ai essayé ton script en mettant le @ devant fopen mais il redirige toujours sur mon site personnel. (comme d'habitude)
Ton script ne me retourne cependant aucune erreur
Voici mon script:
merci d'avance
benhamster
Salut!
Si, lorsque tu testes ce script, ton site est actif (il le faut pour pouvoir tester le script), alors, le fopen réussit donc il t'affiche la première page. Essaye en inversant les deux header("Location:...") et teste à nouveau : tu verras que le script te redirige vers debled.redby.info/index.php
Ou mieux, change @fopen("http://bding.dyndns.org/apache2-default/index.php", "r") par une URL inconnue sur ton site, par exemple @fopen("http://bding.dyndns.org/apache2-default/toto.php", "r"), et tu seras dirigé vers le second site.
@+
-->Message édité par Minus-et-Cortex le 27/12/2006 22:36:57<--
-------
Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
Gustave Parking
|
|
linux, ça dech
|
|
|
Slt
Je pense pouvoir dire que le script n'est pas fonctionel:
Prenons un exemple:
je ping sur google.be et donc si google répond je redirige vers dafont.com/fr/index.php.
En cas de problème de google le script redirige vers redby
Ca c'est le fonctionemet théorique du script.
En pratique le script redirige toujours vers redby.
Voici le script:
Peux tu tester ça de ton côté pour voir si tu arrive à la même conclusion que moi??
benhamster
|
|
|
|
|
Une procédure de ping:
http://www.comscripts.com/scripts/php.php-ping.901.html
-------
![[:jandre:1] [:jandre:1]](/data/globaldata/usmilies/jandre-1.gif) Il faut mieux en mettre plus que moins
|
|
linux, ça dech
|
|
|
|
Slt je sais j'ai vu ce script mais j'ai un serveur qui tourne sous linux
|
|
|
|
|
Ah oui, c'est embétant.
Bon, je vais chercher autre chose.
-------
![[:jandre:1] [:jandre:1]](/data/globaldata/usmilies/jandre-1.gif) Il faut mieux en mettre plus que moins
|
|
linux, ça dech
|
|
|
Bonjour
J'ai analyser les différents scripts:
Pour le script de minus-et-cortex: le @fopen c'est assez bizar vu que cette variable sert à ouvrir un fichier et je ne crois pas que ca ouvrirait un site si ???
Pour le script de beno@ : il parait que system(ping ... ) n'existe pas.
J'ai effectuer plusieurs test avec le script de Minus-et-cortex
la 1ère colone équivaut au numéro (nécésaire pour que je commente après)
<?php
if (($handle = @fopen("2ème colone", "r")))
{
fclose($handle);
header("Location: 3ème colone");
}
else
{
header("Location: 4ème colone");
}
?>
la 5ème colone équivaut ou le script me redirige
la 6ème colone dit si le script est ok ou pas
donc voici le tableau (désolé pour la mise en forme mais il n'y a pas de fonction tableau):
1.........|a,com.......|a,com.......|redby.......|redby.........................................|OK
2.a.......|bding.......|bding.......|redby.......|si apache est démaré = redby............|PAS OK
...b......|..............|...............|redby.......|si apache n'est pas démaré = redby....|OK
3.........|google......|bding.......|redby.......|redby............................................|PAS OK
4.........|google......|dafont......|redby.......|redby............................................|PAS OK
si vous regardez bien il me redirige toujours vers la 4ème colone
merci d'avance
benhamster
|
|
|
|
|
Salut!
J'étais un peu occupé ces temps-ci. J'ai essayé ton script
Il me dirige bien vers dafont.com (site que je ne connaissais d'ailleurs pas).
@+
-------
Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
Gustave Parking
|
|
linux, ça dech
|
|
|
Slt éffectivement suite a ton message j'ai essayé ce script sur redby et ifrance et sur ces deux hébergeurs le script ne fonctionne pas
Parcontre sur mon serveur peu fiable le script fonctionne très bien
Seulement ce script ne peu pas etre mis sur mon serveur peu fiable car le but est de faire que si ce serveur peu fiable fonctionne on va dessus sinon on va sur un autre site. Mais donc ce script doit etre disponible 24h/24 7j/7
Question : Sur quel hebergeur est tu???, Est-til fiable ???
|
|
|
|
|
benhamster a écrit :
Slt éffectivement suite a ton message j'ai essayé ce script sur redby et ifrance et sur ces deux hébergeurs le script ne fonctionne pas
Parcontre sur mon serveur peu fiable le script fonctionne très bien
Seulement ce script ne peu pas etre mis sur mon serveur peu fiable car le but est de faire que si ce serveur peu fiable fonctionne on va dessus sinon on va sur un autre site. Mais donc ce script doit etre disponible 24h/24 7j/7
Question : Sur quel hebergeur est tu???, Est-til fiable ???
sur tes serveurs distant, la fonction des url pour fopen a du être désactivée ou alors n'est pas disponible car la version de php est trop vieille
|
|
|
|
|
essai toujours
$serv1='http://site1.com';
$serv2='http://site1.org';
if (!file_get_contents($serv1)) header ('Location: '.$serv2);
else header ('Location: '.$serv2);
|
|
|
|
|
Salut!
C'est pas dit que ce script fonctionne mieux : il faut pour ouvrir des URL avoir activé ce support lors de la compilation de PHP (voir http://fr.php.net/manual/en/ref.filesystem.php#ini.allow-url-fopen ). Il te reste toujours la possibilité de manipuler des sockets.
@+
-------
Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
Gustave Parking
|
|
|
|
|
ouais je sais ...
mais sinon, pourquoi ca ne serait pas l'inverse? le serveur faillible qui enverait toutes les x minutes une requette au serveur distant pour lui signaler qu'il est actif?
|
|
linux, ça dech
|
|
|
slt tout le monde
J'aimerais bien savoir quel hébergeur utilise minus et cortex??? vu que sur son hébergeur sa marche.
Pour le script de Beno@ je vais regarder ca tout de suite
|
|
linux, ça dech
|
|
|
Bon voila j'ai tésté le script de Beno@ sur mon serveur sa marche très bien par contre sur un aure serveur sa va pas
voici le résultat :
Warning: file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in /data/users/d/debled/index.php on line 5
Warning: file_get_contents(http://bding.dyndns.org/apache2-default/index.php) [function.file-get-contents]: failed to open stream: no suitable wrapper could be found in /data/users/d/debled/index.php on line 5
Warning: Cannot modify header information - headers already sent by (output started at /data/users/d/debled/index.php:5) in /data/users/d/debled/index.php on line 5
PS : C'est pour ça que je demande l'hébergeur de Minus ou cortex
Si quelqu'un connait un hébergeur (même si il n'y a qu'un Mo) et qu'il n'y a pas mysql qui est gratuit, et qui n'a pas refusé beaucoup de chose.
-->Message édité par benhamster le 29/12/2006 14:21:39<--
|
|
|
|
|
benhamster a écrit :
PS: C'est pour ça que je demande l'hébergeur de Minus-et-Cortex
Je suis mon propre hébergeur, sur ma machine personnelle.
@+
-------
Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
Gustave Parking
|
|
linux, ça dech
|
|
|
|
Il est fiable??? Il est allumé 24Hsur 24 ??? Est-ce que tu pourais mettre mon fichier sur ton serveur si il est fiable???
|
|
|
|
|
Je ne vois pas bien ce que tu entends par fiable, mais en tout cas, il n'est pas allumé 24/24 (pas encore, bientôt peut-être).
@+
-------
Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
Gustave Parking
|
|
|
|
linux, ça dech
|
|
|
Ce que j'attend par fiable c'est qu'il est allumé 24h/24 et qui ne plante pas trop souvent
ps je me suis inscript sur heisspiter.net je n'ai plus qu'a attendre l'activation
|
|
|
|
|
|
je crois que j'ai déja vus un hebergeur qui te conviendrais mais je ne sais plus le quel je te le dirai si je m'en ressouvien
-->Message édité par tuxben le 01/01/2007 01:19:22<--
|
|
linux, ça dech
|
|
|
|
Mauvaise nouvelle hostweb n'a pas accepté ma proposition d'hebergement.
|
|
1
|