Récupérer les premiers caractères d'une url

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

bipeurs
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 217
Inscription: Sam Sep 06, 2003 20:01

Récupérer les premiers caractères d'une url

Message le Mar Fév 21, 2006 20:40

Bonjour,

Je cherche un script php (ou javascript) permettant de repérer la présence ou non du "www" dans une url.
(en effet, je suis chez un hébergeur gratuit ne permettant pas l'url rewriting donc je fais un script detectant si le visiteur vient du http:// ou du http://www, et je le renvois sur le www en redirection 301).

Je pense qu'il faut une variable qui renvoi l'url (http://site.com ou http://www.site.com) et qui analyse les 10 premiers caractères ; si parmis ces 10 caractères il y a "www", il bouge pas, sinon, il fait la 301.

Je pense que c'est un script javascript qu'il fait mais je ne m'y connais pas du tout et je n'ai pas trouvé de tel script sur le forum ou ailleurs ...

Merci.

pflomo
Nouveau WRInaute
 
Messages: 5
Inscription: Lun Déc 27, 2004 12:39

Message le Mar Fév 21, 2006 22:01

regarde ici -www.allocine.com
Mais ce n'est pas une 301, redirection javascript

test ici apres http://www.webrankinfo.com/outils/test-lien.php

Code: Tout sélectionner
<script language="Javascript">
var myhost
var rExp

myhost = document.URL;
rExp = /allocine.com/gi;
myhost = myhost.replace(rExp, 'allocine.fr');
myhost = myhost.replace('default.html', '');
document.write(myhost);
document.location.href=myhost;
</script>

bipeurs
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 217
Inscription: Sam Sep 06, 2003 20:01

Message le Mar Fév 21, 2006 22:14

Merci, c'est pas mal.

Mais le problème c'est que je dois garder mes pages ; eux ils transfèrent leur .com vers leur .fr en effaçant totalement le .com ... moi je ne peux pas puisque mes pages avec le www ou sans le www sont les mêmes :-)

Il me faudrait un if qui analyse si le visiteur est sur le www ou pas, et qui, si il n'y est pas, execute ce script javascript.

bipeurs
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 217
Inscription: Sam Sep 06, 2003 20:01

Message le Mer Fév 22, 2006 18:09

Personne ne connait un script comme ça ?

jack910
WRInaute discret
WRInaute discret
 
Messages: 97
Inscription: Lun Aoû 29, 2005 12:33

Message le Mer Fév 22, 2006 18:42

j'ai un truc très bien en ASP, mais en php je peut seulement te mettre sur la voie
Tu trouvera sous ce lien les principales variable php succeptibles de t'aider:
http://www.phptools4u.com/articles/view ... imprimer=1

Tisha
WRInaute discret
WRInaute discret
 
Messages: 54
Inscription: Mer Aoû 20, 2003 16:45

Re: Récupérer les premiers caractères d'une url

Message le Mer Fév 22, 2006 20:58

bipeurs a écrit:Je pense qu'il faut une variable qui renvoi l'url (http://site.com ou http://www.site.com) et qui analyse les 10 premiers caractères ; si parmis ces 10 caractères il y a "www", il bouge pas, sinon, il fait la 301.


j'ai un script comme ça, les 4 premiers caractères de $_SERVER['SERVER_NAME'] suffisent

Code: Tout sélectionner
<?
function redirection_301($redirection='') {
  global $_SERVER;                          // compatibiliser les configs et versions PHP
  if(!$redirection) {return false;}         // si aucune adresse de redirection, alors avorter
  header('Location: '.$redirection);        // adresse de redirection
  header('HTTP/1.1 301 Moved Permanently'); // HTTP 301 canonique
  header('Status: 301 Moved Permanently');  // HTTP 301 exotique
  return true;
}

function normaliser_www() {
  global $_SERVER;                                                // compatibiliser les configs et versions PHP
  if(substr($_SERVER['SERVER_NAME'],0,4)=='www.') {return false;} // les WWW sont présents
  if($_SERVER['SERVER_NAME']=='localhost') {return false;}        // le cas de pré-production en localhost ???
  return redirection_301('http://www.'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']); // redirection requise
}

if (!isset($_SERVER)) {$_SERVER=&$HTTP_SERVER_VARS;} // compatibiliser les configs et versions PHP
?>


si le code qui précède est dans le fichier 'redirection.php' alors un exemple d'utilisation pourrait être

Code: Tout sélectionner
<?php
include_once('./redirection.php');
if(normaliser_www()) {exit();} // WWW obligatoire

echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">'."\n";
echo "\n";
echo '<html>'."\n";
echo '<head>'."\n";
echo ' <title>'.$_SERVER['SERVER_NAME'].'</title>'."\n";
echo '</head>'."\n";
echo "\n";
echo '<body>'."\n";
echo ' <p>'.$_SERVER['SERVER_NAME'].'</p>'."\n";
echo '</body>'."\n";
echo '</html>'."\n";
?>


les deux premières lignes sont à mettre dans toutes tes pages php qui doivent rediriger sur l'utilisation des 3W. en espérant que ça t'aidera. J'ai fait ce script il y a longtemps, alors teste le sur une page peu importante avant.

tisha

bipeurs
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 217
Inscription: Sam Sep 06, 2003 20:01

Message le Mer Fév 22, 2006 21:58

Merci, c'est parfaitement ce dont j'avais besoin.

Seulement ... ça ne fonctionne pas.

Quand je fais un echo $SERVER_NAME ça ne 'maffiche rien.
Quand je fais un echo $HTTP_HOST ça m'affiche bien membres.lycos.fr (c'est pour un site hébergé gratos chez lycos) mais quand j'ajoute le www dedans ... ça m'affiche toujours membres.lycos.fr !

:-(

Je comprends pas ...

Tisha
WRInaute discret
WRInaute discret
 
Messages: 54
Inscription: Mer Aoû 20, 2003 16:45

Message le Jeu Fév 23, 2006 3:18

si $_SERVER['SERVER_NAME'] te retourne un vide, alors tu es devant une impossibilité. quoiqu'il te reste tout de même la possibilité d'un courriel à lycos? je serais curieuse de savoir pourquoi SERVER_NAME est désactivé.

ton sous-domaine est 'membres' et rien d'autre... le reste c'est du wildcard, probablement que si tu tentais 'http://cretin.membres.lycos.fr/tonsite/' tu verrais afficher ton site comme si de rien n'était, sans changement d'url.

bref, tu l'as dans l'os. j'espère pour toi que je suis dans l'erreur, mais j'en doute.

tisha


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Google Website Optimizer

  • Analyser le positionnement dans Google
    Cet outil vous permet de vérifier si une ou plusieurs page(s) de votre site arrive(nt) dans les premiers résultats de Google, pour certains mots-clés recherchés.
  • Analyser le positionnement dans Yahoo
    Cet outil vous permet de vérifier si une ou plusieurs page(s) de votre site arrive(nt) dans les premiers résultats de Yahoo, pour certains mots-clés recherchés.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités