begin process at 2012 05 30 23:10:13
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Divers

 > 

Emplacement et taille de la page d'accueil d'un site


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

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!

Membre Club
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

Membre Club
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!

Membre Club
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

Membre Club
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!

Membre Club
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!

Membre Club
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!

Membre Club
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

Membre Club
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!

Membre Club
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


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,484 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales