Aller au contenu

Verticrawl

Actif
  • Compteur de contenus

    10
  • Inscrit(e) le

  • Dernière visite

Messages postés par Verticrawl

  1. Il te suffit de déplacer tes bases sur le nouveau serveur, et commenter le "skip-networking" dans le fichier de config mysql puis redémarrer mysql.

    Ensuite il te faudra définir des utilisateurs mysql qui se connecteront au départ de "tout serveur" et non plus localhost. (choisir % comme host)

    Et dans les scripts sur l'ancien serveur, tu changeras localhost par le nom de ton nouveau serveur.

    Désolé Dan, mais ce n'est pas la question....

    2 serveurs :

    1WEB / 2SQL donc rien a voir avec le /etc/my.cnf (skip-networking qui sert essentiellement pour SLAVE et MASTER et/ou l'ecoute des port réseaux)

    Solution :

    dans WEB1 :

    1) /etc/hosts => SQL2 xxx.xxx.xxx.xxx (resolution du serveur SQL) depuis WEB1 (eviter resolution par dns...pas secure !)

    2) verifier port 3306 ouvert sur les 2 becanes...si port mysql [cqfd]

    3) connection web (mysqlconnect (SQL2, login, password, port)

    dans SQL2 :

    1) /etc/hosts => WEB2 xxx.xxx.xxx.xxx (resolution du serveur WEB) depuis SQL2 (eviter resolution par dns...pas secure !)

    2) mysql : autoriser connection distante depuis WEB2 (phpmyadmin ou webmin)

    3) verifier (shell) si "host WEB2" = IP du serveur web

    4) creer compte Mysql

    5) tester avec un script sql.

    Migration de data : voir MysqlDUMP et une migration "fichier" genre sftp passe tres bien si les serveurs Mysql sont de meme version

    PS :

    - penser à arreter le serveur SQL sur WEB1 (sic!) avant de migrer car perturbation possible sur le port 3306...

    - penser à verifier géolocalisation des serveurs chez hebergeur car data sql "paris/sql - lille/web " bof bof ?

    Bon conseil de Willie waterzool :

    Verifier IP table et protection firewall car petit scarabé aime attaquer 3306...

  2. La conversion de caractères est toujours un vrai problème, particulierement quand il s'agit de convertir des datas existantes.

    Pour faire cela il faut penser à :

    - la charset de la base de données (si vous utilisez MySQL4 et plus [interclassement /collation]

    - exporter avec MYSQLDUMP

    - convertir avec iconv --from-code [LATIN1] --to-code [uTF-8] (voir man iconv)

    - importer dans une nouvelle BD avec le bon interclassement/charset [conseil : creer une nouvelle base pour test ;) )

    parenthese : pour MYSQL si vous souhaitez transcrire du latin-1 (iso-8859-1), il faut utiliser le collation utf8_swedish_ci ou latin1_swedish_ci

    Pour le contenu html, meme principe mais en changeant l'entete http [meta-equiv] et en verifiant les header http

    Pour le serveur apache : attention, il doit envoyer la bonne entete http avec le bon content type (certains hébergeurs ont verrouillés cela, verifier avec l'analyseur d'entete du hub...)

    Vous pouvez vous en sortir facilement avec 3 fonctions :

    - mysqldump pour l'export sql (creation fichier texte de l'export)

    - iconv ou mb_convert pour transcrire les datas (disponibles en php !!!! )

    ATTENTION A WINDOWS-1251 !!! et ses caractères maison.

    IMPACT CHARSET SUR REFERENCEMENT :

    quasi-null car les moteurs parlent systematiquement toutes les charsets. utf-8 est préconisé (il y a qque temps pour ggle) mais cela n'as plus d'impact. On sait que ggle a mis en place des process de correction de charset dans son crawler pour les fautes de charset (un caractere windows-1251 dans de l'iso-8859-1 par exemple).

    A contrario, les erreurs de codage (type au lieu de ' ) ont un impact notable sur les moteurs, parce que les séparateurs de texte sont des criteres de pertinence de contenu (proximité de mot, globalité du ranking sur plusieurs termes. [ voir mon intervention sur w3 campus / janvier 2006 ].

    Avec un peu de temps et de creativite, vous pouvez migrer vos sites dans la charset de votre choix !

    IMPACT CHARSET SUR SITE :

    utf-8 est codé sur 1 a 3 octets...physiquement l'espace disque est plus gros...le transfert de datas (bande passante) peut avoir aussi ce facteur 3...

    Coté navigateur client...90% sont encore windows (1252 en l'occurence). la transcription de l'utf-8 dans un navigateur peut ralentir l'affichage de votre page.

    Coté site : utf-8 et unicode permettent l'intégration de 650 langues dont le chinois ...mais est-ce votre impératif ?

    Bon dev ;)

    A éviter : notepad, dreamw... pensez plutot Unired (opensource russe) ou Editplus (shareware)...mais méfiez vous de ce que vous faites avec ces outils car ils enregistrent souvent dans la charset de votre pc ! En clair si vous passez à l'utf-8 ...bossez sous linux (mettez les moulinettes sur votre serveur web sous linux) et évitez windows à tout prix.

  3. Bonjour à tous,

    Ces sujets sont très intéressants mais relativement éloignés (hélas ?) de la recherche de l'internaute.

    En effet, le pagerank calcule une popularité d'un document au regard des autres documents en fonction du mot clef tapé par l'internaute. Nous sommes alors d'accord pour dire que Google "se sert" de liens inter-documentaires pour ordonner la pertinence. De là a dire que ce calcul s'effectue sur chaque mot-clef....

    La limite saute aux yeux : Si mon site (qui traite de choucroute) à un lien vers w3c...la pertinence de w3c sur "choucroute" est plus que discutable...Pour autant, c'est bien lui qui récupere le backlink ! Il n'y a pas (ou plus?) de contextualisation grâce aux PR et aux backlinks .

    Et du point de vue de l'internaute :

    Google ne comprend toujours pas la subtilité d'une recherche : exemple ci-dessous (testé le 13 avril sur .fr )

    - "offre d'emploi" => 43 000 000 resultats

    - "offre emploi" => 41 100 000 resultats

    - "offre d emploi" => 79 900 000 resultats

    Pour nous humains, est-ce la même chose ? OUI !

    Cela fait la part belle aux référenceurs et webmestres...mais cela changera forcement très bientot.

    Et du point de vue d'un moteur : (voir à gauche ;) )

    L'approche par concept est [en l'etat des connaissances] la seule viable pour orienter et guider l'internaute à exprimer sa demande afin de limiter l'ambiguïté linguistique :

    BARRAGE peut signer plusieurs concepts...

    Barrage routier

    Barrage éléctrique

    match de Barrage.

    Nous sommes d'accord : ces 3 concepts ont tout et rien à voir entre eux...mais Google ne vous informe par qu'ils existent !

    Retour d'expérience :

    Pour FraGGo.com (moteur de recherche transport) nous indexons environ 1.500.000 de docs (pdf compris)...la volumétrie des liens inter-documents est d'environs 4.000.000. mais la réalité et plus proche de 1 docs=30 liens externes.

    Google et le comportementale internaute :

    Faites le test suivant :

    1) Contactez un ami (par téléphone) et demandez lui de taper la même requete que vous sur Google.fr (respectez casse, accents et pluriels):

    =>Observez le volume de document et l'ordre des résultats de la page 1...

    2) Faites en même temps une 2ème requête identique

    =>Observez le volume de document et l'ordre des résultats de la page 1...

    3) recommencez le test en changeant de navigateur web et d'ip si possible..

    4) regardez dans vos cookies...

    Bravo : vous venez de découvrir que Google commence le comportementale.

    =>Notez sur webmaster-hub vos observations...

  4. Ce genre de remarque remet bien les néophytes en place, mais en même temps ça n'aide personne à part toi...

    Concernant l'utilisation d'une variable de session ($_SESSION) cela peut être un bon moyen dans le cadre d'un système utilisant DÉJA les session mais difficilement justifiable pour un simple système de langue. Pour avoir un code portable il faudrait passer l'ID de session entre les pages...et dans ce cas pourquoi ne pas simplement passer une variable genre ?lang=fr ... (et pourant c'est simple et logique hein Verticrawl ?)

    Le rewritting te servira beaucoup dans le référencement de tes pages dans toutes les langues...

    Il faut encore penser à toujours avoir une langue si l'utilisateur ne la précise pas, personnellement je procède ainsi :

    $settings['allowed_lang'] = array("Français"=>"fr","English"=>"en");
    $currentlang = (isset($_GET['lang']) && in_array($_GET['lang'],$settings['allowed_lang'])?strtolower($_GET['lang']):"fr");

    Et de ceci découle lgiquement le préfixage our le suffixage de tes image avec ce code à deux lettres. Donc pour afficher une image tu procède ainsi :

    <img src="nomimage-<?php echo $currentlang; ?>.jpg" alt="Description de l'image" />

    <{POST_SNAPBACK}>

    Votre demarche est fausse puisque la langue (dans votre exemple) doit etre determine a l'avance (internaute ou navigateur)....Hors, ceci doit etre une variable de session qui se balade de page en page. C'est donc une donnee qui est determinee et transmise entre pages..

    Developpe en ajoutant un "?lang=truc" releve de la tres mauvaise idée puisque l'internaute peux choisir "lang=ru" dans l'url et vous plantez votre site... Vous devez avoir la maitrise de la langue et donc choisir une langue par defaut.

    Relisez ce que j'ai ecris et vous verez que chaque element a son importance. il et clair que le multi-langue n'est pas a la porte du debutant [cqfd]. methodologiquement cela vous permet aussi (avec un meme script) d'afficher X langues sans modifier 1 bout de code. pour cela voir www.123emploi.com

  5. Bonjour,

    Votre probleme est de choisir (et de connaitre) la langue a un instant T...

    Option1 :

    monsite.com/fr/*

    monsite.com/de/*

    monsite.com/en/*

    avec tout vos fichiers derriere la langue...vous savez toujours dans quelle langue vous être (voir variable $_SERVER dans phpinfo() ).

    Option 2 :

    Vous lisez la langue de l'utlisateur et la stocker dans $_SESSION[LANGUE]="fr";

    Tant que session ="fr" vous affichez fr

    Si clic sur Drapeau en alors $_SESSION[LANGUE]="en";

    Trop facile....

    Avec un bon MODREWRITE on peut faire des merveilles ;-)

    Bon dev

  6. Bonjour,

    Pour info, le moteur de recherche d'offres d'emploi 123-emploi.com vient de lancer un programme d'affiliation pour les sites pro et perso.

    Ce programme a pour objectif de remuner le partenaire si un client (recruteur) reference une offre d'emploi sur http://www.123-emploi.com/

    Chose importante, la remuneration et de 7 euros par vente realisee...

    Le programme est disponible ici http://affiliation.123emploi.com/

    Qu'on se le dise...

  7. Salut,

    J'ai besoin d'un petit coup de main pour la création d'un moteur de recherche sur une base de donnée, mon objectif etant d'obtenir un champ de recherche qui permettrait l'affichage de photos stockées ,avec des mots clé, dans la bdd.

    Voici mon code :

    <?php

    $Host="localhost";

    $Login="******";

    $Password="******";

    $Base="******";

    mysql_connect($Host,$Login,$Password) or die("<p align='justify' class='bodytext'><font size='2' face='Verdana, Arial, Helvetica, sans-serif'><strong>Connexion Au Serveur Impossible : Le serveur est surchargé veuillez revenir plus tard.</strong></font></p>");

    mysql_select_db($Base);

    $Recherche = $_POST['Recherche'];

    if($Recherche=="")

    {

    echo "Vous devez taper une recherche.";

    exit;

    }

    $requete = mysql_query("SELECT chemin FROM photo WHERE 'mot1' LIKE '%$Recherche%' OR 'mot2' LIKE '%$Recherche%'");

    if(!$requete)

      die('Une erreur s\'est produite lors de l\'exécution de la requête MySQL...');

    if(mysql_num_rows($requete) == 0){

    echo 'Aucun résultat ne correspond aux termes de votre recherche.';

    }

    while($B = mysql_fetch_array($requete)){

    echo "$B[mot1] - $B[mot2]";

    }

    mysql_close();

    ?>

    Et nous arrivons au probleme :

    J'ai toujours : "Aucun résultat ne correspond aux termes de votre recherche" comme resultat. :fou:  :fou:

    Les photos sont stockées dans la table photo et je selectionne "chemin" pour avoir l'affichage de la photo.

    Merci de votre aide

    j'espere avoir été clair  :wacko:

    <{POST_SNAPBACK}>

    ------------

    Bonjour,

    Vous venez de toucher du doigt le probleme principal de l'indexation et des moteurs de recherche :

    exemple : recherche sur le mot "transport"

    dans votre base vous obtiendrez

    - tranports

    - transporteur

    - transporter

    vous utilisez le jocker (%)...ce qui rend la chose non pertinente...

    La bonne solution (pour obtenir qque chose d'a peu pret correct) :

    1 table contenant vos images nomme [iMAGE]

    1 table contenant le nro image + le mot [KEYWORDS]

    2 requetes :

    - select nro image from KEYWORDS group by nro image where mot="transport"

    qui me donne X,Y,Z nro image (uniques)...

    - select from IMAGE where nro image in (X,Y,Z)

    Bref : Pour obtenir un minimum de pertinence vous allez de voir ajouter le ranking (table KEYWORDS) et spliter vos phrases en X mots...la belle affaire.

    Bravo, vous êtes entrée dans l'indexation plein texte...Il vous reste 5 ans pour obtenir le niveau des moteurs actuels...mais pour une utilisation perso cela reste tres satisfaisant ;)

    Si vous cherchez de l'info sur l'indexation documentaire et les moteurs de recherche (full-text, taxinomie, troncarue et autre moteur ... rendez vous http://www.verticrawl.com , le moteur de recherche en mode application service provider pour web, intranet, groupware ..

    Bon courage

×
×
  • Créer...