Partage
  • Partager sur Facebook
  • Partager sur Twitter

Htaccess, réécrire une ancre

Réécrire des ancres d'un onepage pour l'indexation google

Sujet résolu
    30 mars 2017 à 10:35:23

    Bonjour, j'ai récemment créé et mis en ligne mon site qui me décrit en tant que jeune web designer: sacha marits , j'en suis très satisfait et je l'ai soumis à google webmaster & analitycs.

    Le problème c'est qu'il m'index sachamarits.be/bio sachamarits.be/portfolio etc, ces pages n'existent absolument pas! En effet il index les liens de mon menu sauf que c'est un onepage et que j'ai pas du tout penser à ça en effet mes secctions comportent mes id qui sont utilisés en tant qu'ancres pour mon menu et ils s'appelent tout bêtement "#section1" "#section2" etc... et là pour le coup ça marche "sachamarits.be#section2"...

    J'aimerais tout simplement - au lieu de changer tout mon code (a moins que c'est mieux selon vous?) - utiliser le fichier .htaccess pour rediriger sachamarits#section1 vers sachamarits/bio | sachamarits#section2 vers sachamarits/portfolio | etc (j'ai jusque #section5)...

    J'ai cherché mais c'était assez vaste et surtout il faut comprendre les regex (j'ai du mal avec ces rêgles là) pour pouvoir adapter le code à son propre cas.

    Merci de votre aide!

    -
    Edité par Sacha Marits 30 mars 2017 à 16:16:40

    • Partager sur Facebook
    • Partager sur Twitter
      30 mars 2017 à 11:45:39

      Impossible : une ancre n'est pas envoyée au serveur. Difficile de réécrire une information que tu n'as même pas en premier lieu.

      -
      Edité par julp 30 mars 2017 à 11:47:19

      • Partager sur Facebook
      • Partager sur Twitter
        30 mars 2017 à 15:35:04

        julp a écrit:

        Impossible : une ancre n'est pas envoyée au serveur. Difficile de réécrire une information que tu n'as même pas en premier lieu.

        -
        Edité par julp il y a environ 3 heures


        Je comprends bien mais puisque mon lien sachamarits.be#section5 marche c'est qu'il peut être réécrit non?
        • Partager sur Facebook
        • Partager sur Twitter
          30 mars 2017 à 16:28:08

          Qu'est-ce que tu appelles "marcher" ?

          #sectionX n'est pas un lien, au sens adresse réelle, seul ce qui le précède l'est et au final, toutes ces sections ont la même adresse/finissent au même endroit.

          Une ancre, c'est quoi ? Une position (verticale) au sein d'un document. Si le client envoyait cette information au serveur, qu'est-ce que ce dernier pourrait bien en faire ? Il ne faut pas non plus tout confondre, ce n'est parce que le client interprète telle chose de telle manière que tu dois en attendre de même pour le serveur, ce sont deux mondes différents.

          Toujours est-il que comment veux-tu réécrire côté serveur quelque chose que le client ne t'envoie à aucun moment (l'ancre, la partie #sectionX de l'URL) ? Le seul moyen de "gérer" l'ancre, c'est côté client (via JS). C'est un peu tout le problème des "onepage".

          Rien ne t'empêche cela dit de faire l'inverse : rediriger /bio sur /#section1 (RewriteRule ^bio$ /#section1 [NE,L,R=permanent] de tête, idem pour les autres). Ca ça marchera (mais à part éviter des liens morts, niveau SEO, ça ne doit pas être génial) dans la mesure où le serveur, lui, peut en indiquer une au client.

          -
          Edité par julp 30 mars 2017 à 17:16:12

          • Partager sur Facebook
          • Partager sur Twitter
            30 mars 2017 à 17:00:26

            julp a écrit:

            Qu'est-ce que tu appelles "marcher" ?

            #sectionX n'est pas un lien, au sens adresse réelle, seul ce qui le précède l'est et au final, toutes ces sections ont la même adresse/finissent au même endroit.

            Une ancre, c'est quoi ? Une position (verticale) au sein d'un document. Si le client envoyait cette information au serveur, qu'est-ce que ce dernier pourrait bien en faire ? Il ne faut pas non plus tout confondre, ce n'est parce que le client interprète telle chose de telle manière que tu dois en attendre de même pour le serveur, ce sont deux mondes différents.

            Toujours est-il que comment veux-tu réécrire côté serveur quelque chose que le client ne t'envoie à aucun moment (l'ancre, la partie #sectionX de l'URL) ? Le seul moyen de "gérer" l'ancre, c'est côté client (via JS). C'est un peu tout le problème des "onepage".

            Rien ne t'empêche cela dit de faire l'inverse : rediriger /bio sur /#section1 (RewriteRule ^bio$ /#section1 [NE,L] de tête, idem pour les autres). Ca ça marchera (mais à part éviter des liens morts, niveau SEO, ça ne doit pas être génial) dans la mesure où le serveur, lui, peut en indiquer une au client.


            Ok merci beaucoup de ta réponse, mais comme tu l'as dis ça peut ne pas être la bonne solution pour ce qui est du référencement etc... Et effectivement j'ai des liens morts que Google m'a indexé (je ne sais pas pourquoi) on peut le voir en tapant site:sachamarits.be dans la recherche.

            C'est justement mon problème, je pensais qu'en redirigeant ces liens morts vers mes ancres (ou l'inverse que j'avais mentionné plus haut) ça résoudrait mon problème sans encombres. 

            Peut être il y a-t-il moyen d'interdire l'indexations de ces pages avec robots.txt ou .htaccess? Ou une autre solution? Dans le pire des cas j'appliquerai ta solution pour "corriger" ces liens morts...

            -
            Edité par Sacha Marits 30 mars 2017 à 17:02:16

            • Partager sur Facebook
            • Partager sur Twitter
              30 mars 2017 à 17:15:53

              Ce que je t'ai proposé devrait corriger ces liens morts. Tu pourras ensuite revoir ça par la suite.

              Peut être il y a-t-il moyen d'interdire l'indexations de ces pages avec robots.txt ou .htaccess? Ou une autre solution? Dans le pire des cas j'appliquerai ta solution pour "corriger" ces liens morts...

              Je doute que google ait inventé ces URL, il a bien dû les trouver quelque part, d'autant qu'elles sont particulièrement précises. Avec le robots.txt, tu peux les "interdire" mais je pense que ce serait plutôt prendre le problème par le mauvais bout et qu'une redirection serait bien plus adaptée.

              -
              Edité par julp 30 mars 2017 à 17:17:01

              • Partager sur Facebook
              • Partager sur Twitter
                30 mars 2017 à 18:49:24

                julp a écrit:

                Je doute que google ait inventé ces URL, il a bien dû les trouver quelque part, d'autant qu'elles sont particulièrement précises.

                C'est ce que je me dis aussi mais après vérification je vois pas du tout ou il aurait pu les prendre ... Il a indexé "connaissances" et il est vrai que au départ j'ai voulu appeler une ancre / un lien du menu comme ça mais j'ai jamais posté cette version là et j'ai opté pour "compétences" pour finir j'ai vérifié dans mon html et css et il y a uniquement le mot connaissance présent dans un h3 ("Mes compétences / mes connaissances" pour être précis)... Dans mon FTP il n'y a pas de dossier de ces noms là non plus (vu que c'est un onepage, logique)...

                Enfin bon bref, je vais faire ce que tu m'as dis ça me semble le mieux aussi, merci de ton aide! :D

                ----- 

                En fait j'avais installé Wordpress(j'avais complètement zappé) et commencé la structure de mon site que j'avais en tête et google a indexé ces pages là... Je vais donc faire la demande pour qu'ils les masquent de leur indexations, et puis j'imagine qu'au prochain passage du robot il remarquera qu'elles n'existent pas et les supprimera de leur base de donnée.

                Pour de ce qui est du .htaccess au final j'avais ça:

                Options +FollowSymlinks
                RewriteEngine On
                RewriteRule ^bio\/$ #section1 [NE,L]
                RewriteRule ^portfolio\/$ #section2 [NE,L]
                RewriteRule ^connaissances\/$ #section3 [NE,L]
                RewriteRule ^experience\/$ #section4 [NE,L]
                RewriteRule ^contact\/$ #section5 [NE,L]

                Et ça fonctionnait, mais je ne l'utilise pas vu que ce problème va être résolu par Google (du moins je l'espère et auquel cas j'aurai déjà le code pour l'htaccess de prêt).

                Merci beaucoup de ton aide julp ! :D

                -
                Edité par Sacha Marits 30 mars 2017 à 19:54:09

                • Partager sur Facebook
                • Partager sur Twitter

                Htaccess, réécrire une ancre

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown