Accueil > Forum > > > > Emplacement et taille de la page d'accueil d'un site
Emplacement et taille de la page d'accueil d'un site
mercredi 14 avril 2010 à 15:47:00 |
Emplacement et taille de la page d'accueil d'un site

W@$h!
|
Bonjour,
Je suis actuellement en train de créer un script qui permet d'analyser le contenu d'une page web (présence des balises, nombre et taille des images etc...)
Toutes mes fonctions sont prêtes et fonctionnent mais je me heurte à deux problèmes :
_ Sur la page d'analyse, je demande au visiteur d'entrer le nom de son site, par exemple : www.monsite.com
Mais comment faire pour savoir quelle est la page d'accueil, si par exemple c'est www.monsite.com/home/accueil/index.php, ou encore monsite.com/index.php
_ Deuxièmement, une fois cette page localisée, comment obtenir la taille de la page?? J'ai déjà une fonction permettant de récupérer la taille des images et script incluent dans la page, mais ça ne fonctionne pas sur les pages php.
Voici le code de cette fonction :
Code PHP :
function filesize_url($url,$port){
global $url_site;
$size=-1;
$site=substr($url,7,strpos(substr($url,7),'/'));
$errstr='';
if($fp=@fsockopen($site, $port,$errno,$errstr)){
fputs($fp,"HEAD $url HTTP/1.0\r\n\r\n",strlen("HEAD $url HTTP/1.0\r\n\r\n"));
while(!feof($fp)){
$buffer=fgets($fp, 1024);
$split=explode(' ', $buffer);
if($split[0]=="Content-Length:"){
$size=(int)$split[1];
break;
}
}
fclose($fp);
}
if($errstr!='' || $size==-1) return false;
return $size;
}
J'espère m'être fait comprendre et surtout que vous allez pouvoir m'aider...
D'avance merci!!
|
|
mercredi 14 avril 2010 à 18:25:59 |
Re : Emplacement et taille de la page d'accueil d'un site

kohntark
|
Salut,
Mais comment faire pour savoir quelle est la page d'accueil, si par exemple c'est www.monsite.com/home/accueil/index.php, ou encore monsite.com/index.php
En 2 mots : c'est mort !!!
... enfin si je comprends correctement ce que tu veux dire :
S'il s'agit de récupérer cette page aucun pb, c'est celle que l'on obtient en tapant www.monsite.com ... en principe (sisi, y a plein de sites pour lesquels ce n'est pas le cas  )
S'il s'agit comme je le pense de connaitre le fichier servi : c'est mort !!!(bis) => url rewriting notamment.
mais ça ne fonctionne pas sur les pages php.
Peux tu être plus précis, je ne comprends pas bien ce que tu entends par pages php ?
Peux tu l'être également sur le but final de "un script qui permet d'analyser le contenu d'une page web " ?
Cordialement,
Kohntark -
|
|
jeudi 15 avril 2010 à 09:00:38 |
Re : Emplacement et taille de la page d'accueil d'un site

W@$h!
|
Bonjour,
Tout d'abord, merci d'avoir répondu!
Alors pour préciser un peu le contexte, je réalise ce projet dans le cadre d'un site de référencement. Le but et d'analyser le contenu de la page d'index afin d'en améliorer son référencement sur les moteurs de recherches.
Pour être encore plus précis, je suis en train de réaliser quelque chose qui ressemble à ça : [ Lien ]
Toutes mes fonctions prêtes et fonctionne à condition que si je rentre www.monsite.com, la page d'index soit www.monsite.com/index.php ou index.html etc...
Mais en testant le site dont j'ai donné l'adresse ci-dessus, si on rentre par exemple :
http://www.intersport.fr/
il semble bien trouver la page d'accueil, qui pourtant à l'air d'être dans
http://www.intersport.fr/resources/home/
Au passage, désolé pour la pub, mais j'en pense que ma question est plus claire comme ça :)
|
|
jeudi 15 avril 2010 à 18:50:39 |
Re : Emplacement et taille de la page d'accueil d'un site

kohntark
|
Re,
Au passage, désolé pour la pub, mais j'en pense que ma question est plus claire comme ça :)
C'est le cas effectivement !
Soyons clair :
"Mais comment faire pour savoir quelle est la page d'accueil" ?
- Page d'accueil === page fournie en appelant "http://leSite.truc"
- impossible de connaitre son réel chemin et son nom sur le serveur
il semble bien trouver la page d'accueil, qui pourtant à l'air d'être dans [...]
Oui, car il "suit" les headers reçus du site, chose que tu ne fais vraisemblablement pas.
Voici ce qu'il se passe lorsque tu entres "http://www.intersport.fr/" dans ton navigateur :
1 => GET de la page d'accueil
2 <= réception d'un code HTTP 301 Moved Permanently, ce qui indique au navigateur que la page demandée a été déplacée de façon permanente et fournie également la nouvelle adresse, en l'occurrence http://www.intersport.fr/resources/home/
3 => le navigateur fait donc une nouvelle demande (GET) de l'adresse de redirection ci-dessus
4 <= le site retourne la page demandée (== la page d'accueil)
En procédant comme dans le code de ton premier message (== tu t'arrêtes au point 1) tu recevras et analysera le point 2, qui peut contenir ou non des données HTML (message style "Cette page a été déplacée, ..."), ce qui est incorrect.
Il est donc impératif de "suivre" les codes HTTP de redirection jusqu'à l'obtention d'un code "valide" (200, 404, ...), ... et traiter en conséquence.
Il y a comme d'habitude plusieurs façons de faire, cURL étant la solution la plus simple.
Deuxièmement, une fois cette page localisée, comment obtenir la taille de la page?? J'ai déjà une fonction permettant de récupérer la taille des images et script incluent dans la page, mais ça ne fonctionne pas sur les pages php.
J'ai fait quelques tests très rapides pour valider un peu ce que je pensai, et éviter ainsi de dire trop de conneries.
fputs($fp,"HEAD $url HTTP/1.0\r\n\r\n",strlen("HEAD $url HTTP/1.0\r\n\r\n"));
=>
$str = "HEAD / HTTP/1.0\r\n\r\nHost: $url\r\n\r\n";
fputs($fp, $str, strlen($str));
A noter la présence de bugs (potentiels) dans ta fonction.
Une nouvelle fois tu gagnerai à utiliser cURL pour ce genre de chose.
Cordialement,
Kohntark -
|
|
vendredi 16 avril 2010 à 09:26:33 |
Re : Emplacement et taille de la page d'accueil d'un site

W@$h!
|
Bonjour,
Merci beaucoup pour toutes ces infos, je penses que ça va me faire gagner pas mal de temps et protéger mes cheveux d'un arrachage inopiné...
J'ai testé avec cURL quelque chose comme
Code PHP :
function test($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
... et ça a l'air de marcher déjà beaucoup mieux!
Merci encore!
|
|
vendredi 16 avril 2010 à 11:16:44 |
Re : Emplacement et taille de la page d'accueil d'un site

W@$h!
|
Et en rajoutant :
Code PHP : curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
c'est juste parfait!
Merci de ton aide kohntark!!
|
|
lundi 19 avril 2010 à 10:08:48 |
Re : Emplacement et taille de la page d'accueil d'un site

W@$h!
|
En fait, les problèmes ne sont pas terminés :'(
Tout fonctionne correctement en local avec cette fonction :
Code PHP : function MaFonction($url){
global $data;
$ch = curl_init();
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //Set curl to return the data instead of printing it to the browser.
curl_setopt($ch, CURLOPT_URL, $url);
$data = curl_exec($ch);
echo curl_getinfo($ch, CURLINFO_HTTP_CODE)."<br>";
echo curl_getinfo($ch, CURLINFO_REDIRECT_COUNT)."<br>";
echo curl_getinfo($ch, CURLINFO_EFFECTIVE_URL)."<br>";
curl_close($ch);
return $data;
}
Mais quand je met ma page sur le serveur de test : Ca ne marche plus!
Je test sur un site www.monsite.com
En local, si je rentre cette adresse, tout fonctionne.
Met sur le serveur, je suis obligé de mettre monsite.com sinon il ne trouve pas la page d'accueil.
cURL est pourtant bien activé sur le serveur..
Quelqu'un à une petite idée??
|
|
lundi 19 avril 2010 à 18:18:38 |
Re : Emplacement et taille de la page d'accueil d'un site

kohntark
|
Re,
En fait, les problèmes ne sont pas terminés :'(
Si ça peut te rassurer je ne connais aucun développeur qui pourrait prétendre l'inverse
J'ai peur de ne pas bien comprendre ... peux tu être plus précis sur la nature du problème, les éventuelles erreurs retournées, etc ... ?
Cordialement,
Kohntark -
|
|
vendredi 23 avril 2010 à 10:59:32 |
Re : Emplacement et taille de la page d'accueil d'un site

W@$h!
|
Bonjour,
Désolé de ne pas avoir répondu avant... Beaucoup de boulot!
Il semblerais que tout fonctionne (enfin presque!), mais la redirection ne se fait pas sur le serveur car la version de cURL pose problème.
Donc tout semble maintenant bon sur ce point après une petite mise à jour sur le serveur! J'ai une nouvelle question, mais comme elle n'a rien à voir => Nouveau post
Merci beaucoup de ton aide en tous cas kohntark, tu m'aurais fait gagner un temps précieux!
|
|
Cette discussion est classée dans : taille, page, site, url, fp
Répondre à ce message
Sujets en rapport avec ce message
arguments et url ? (débutant) [ par inconnuanonyme ]
Bonjour !Avant toute chose je tiens à préciser que je suis débutant en la matière.Voici ma question :un site propose une page où l'on peut écrire un t
Passage de variable d'une page a l'autre de manière securisé... [ par kahiros ]
Bonjour tout le monde,jusqu'a present je n'ai jamais eu besoin de poster de message étant donné la foules d'informatiosn deja presente sur le site.Tou
probleme integration d une page [ par fmarc38 ]
Bonjour a tous ,voici le soucis, j ai un petit site mobile (donc que php) , le truc c est que je voudrais bien integrer une page php ds ma page. juqu
Protéger un appel de page par la méhode GET [ par zeguizmo ]
Salut à tous, Bon le titre est pourri mais je trouvais pas comment dire.La question : quelle est la meilleure méthode pour protéger un appel de page q
probleme avec l'url [ par Malamute7 ]
bonsoir, je creer un site internet en utilisant wamp serveur. j'utilise des balise div avec des feuilles de styles css. il me reste a créer les liens
page d'inscription a mon site [ par blackitou ]
je suis debutant en dreamweaver mais avec un peut de courage j'ai crerer un site web avec des animation flash ,horloge,... mais je veut ajouter une es
enregistrer l'IP des visiteurs de son site [ par jeanclod13 ]
Bonjour à tous, J’ai créé un site sur ma copropriété avec une zone réservée aux copropriétaires pour y accéder pour ceux qui le souhaitent chacun a u
Comment récupérer url d'une page du navigateur [ par juliacom ]
Bonjour la communauté Celà fait un petit moment que je n'ai plus posté mais là je séche un peu le sujet: Comment peux t'on recuperer l'url d'une pa
LocalHost PHP [ par OmarEK ]
Salut Tout le Monde, Je viens de commencer un site de PHP pour la 1ere fois, quand j'ai ouvert la page localhost pour m'afficher le repertoire dans l
Obtenir les infos d'une page AJAX d'un site exterieur [ par roro59650 ]
Bonjour à toutes et tous! Voilà, pour le boulot, je fait une petite application qui permet de récupérer automatiquement les informations d'un concurr
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|