Aller au contenu

Sujets conseillés

Posté

Bonjour,

dans le cadre de la refonte de mon site, je modifie l'arborescence, crée de nouveaux répertoires, modifie des noms de fichiers.

De plus, toutes les pages .html seront en .php.

Auriez-vous des conseils à me donner pour toutes ces redirections qui, je crains, me feront perdre mon bon référencement.

Posté

Salut Nullette !

 

Si tu gardes une correspondance entre les contenus des pages, il faut que chacune de tes anciennes urls soit redirigée en 301 vers la nouvelle.

Si tu peux le faire d'une manière simple et automatisée c'est bien, si tu dois le faire page à page, commence par les pages à plus fort traffic.

 

Pour le renommage des pages, toujours dans le .htaccess, tu peux faire en sorte que les pages .php soient appelées avec une extension .html

Posté

Bonjour captain_torche :)

Merci pour ta réponse.

Je n'ai pas encore commencé. Presque toutes les pages vont être renommées. Par exemple une page "hist", sera renommée histoire et sera également déplacée.

Je n'ai pas compris comment faire en sorte que les pages .php soient appelées avec une extension .html.

Est-ce que tu penses que cela vaudrait la peine de commencer par renommer/déplacer mes pages actuellles .html avant de les refaire en html 5+php avec leur nouveau header et graphisme ?

Pendant que j'y suis, je pose une autre question :

dans mon fichier .htaccess j'ai actuellement, depuis plus d'un an une trentaine de redirection, est-ce que je peux les supprimer ?

  • 1 month later...
Posté

Salut,

 

Tu peux, comme le dit Captain, faire en sorte qu'une page .html soit interprétée comme du .php

 

Il faut mettre ceci dans le fichier htacces (source http://stackoverflow.com/questions/4687208/using-htaccess-to-make-all-html-pages-to-run-as-php-files )

 

AddType application/x-httpd-php .html .htm

Pour les redirections, tu peux les laisser sauf si elles pointent sur des pages qui n'existent plus (404)

 

Le mieux serait que tu travailles, par exemple, sur un sous-domaine pour tester le nouveau site.

 

Bon courage,

 

 

Portekoi

Posté

Merci :)

En fait, c'est le contraire, ce seront mes futures pages .php qui devraient être interprêtées comme .html.

Je suis entrain de tester mes pages chez mon hébergeur.

J'en ai pour un moment, mais ça me permet aussi de revoir certains contenus.

Posté

Re,

 

Justement : nommes tes pages .php en .html

 

Avec le code que je t'ai donné, elles seront bien considérées comme "php" malgré l'extension en html

Posté

Ah bon ? J'avais mal compris.

Donc je peux nommer les pages en html. Super, ça me fera beaucoup moins de re-directions.

Merci encore :)

  • 4 months later...
Posté

Salut, plusieurs mois après, j'ai avancé :)

j'essaie de compiler au mieux le fichier .htaccess pour les changements de l'extension d'html en php, structure, répertoires, etc.

 

- J'ai mis dans le fichier toutes les anciennes pages en redirection (RedirectPermanent) y compris la page monsite/com/index.html redirigée vers > monsite.com/index.php et  les quelques pages dont seule l'extension a changé.

- J'ai mis environ 70 pages supprimées en redirect gone

 

Il me semble impossible de faire des redirections pour les images. Je les ai toutes modifiées, souvent renommées et elles se trouvent dans d'autres emplacements. Je mettrai dans .htaccess également redirect gone /dossier images.

Est-ce que les moteurs de recherche vont retrouver toutes mes nouvelles images ?

 

 

 

 

  • 1 month later...
Posté

Bonjour tout le monde,

peut-être quelqu'un pourra m'aider.

J'ai un gros problème avec les pages erreurs 404 et 410.

Dans le fichier .htaccess j'ai

ErrorDocument 404 /404.php
ErrorDocument 410 /410.php
Redirect gone /page-supprimee.html

Le problème est l'affichage des pages. L'image s'affiche si je mets le lien complet vers l'image. Parfois l'entête et le pied de page s'affiche, mais pas toujours. Le pire est que tous les liens du menu mènent vers une erreur 404. Je vois d'ailleurs le navigateur qui affiche le nom de la page objet du Redirectgone précédant la destination du menu. Les pages ont été créées d'après la structure de la page index et sont à la racine du site.

Les liens du menu et autres se présentent ainsi :

<?php include("$site_root_path/includes/menu.php"); ?>

 

Posté

Oui, je crois.

Je désespèrais depuis deux jours et ton message me fait un grand plaisir. :)

Dans les balises meta j'ai ajouté

 <base href="http://www.monsite.com/">

et oh miracle :)

Posté

Je ne vois pas dans tes métas.

 

Par contre, tes liens sont :

 

<a href="../actu/breves.php">Brèves</a>

 

pour éviter les soucis, il est mieux d'éviter les liens "relatifs" et de toujours les mettre en absolus comme :

 

<a href="/actu/breves.php">Brèves</a>

 

J'ai vu ceci aussi :

 

<a href="./actu/breves.php">Brèves</a>

De mémoire, sur Chrome ou IE, je crois que cela peut mettre le souk.

 

Donc pour moi, tu devrais pouvoir corriger le code sur menu en enlevant les "../" et en mettant juste "/"

 

Bon courage

Posté

C'est ce que tu vois en affichant la source.

En fait, sur les pages j'ai :

<?php include("$site_root_path/includes/menu.php"); ?>

et dans le menu

<a href="<?php echo $site_root_path; ?>actu/breves.php">Brèves</a>

 

Posté

Pour l'instant, tout semble fonctionner. A part la fonction recherche Google. Je m'acharne :)

Les résultats des recherches devraient s'afficher dans une page, or dans cette page c'est la barre de google qui s'affiche !

Posté

Oui. J'ai mis le code.

J'obtiens les résultats, mais on est obligé de retaper la recherche dans la barre de Google qui s'affiche dans ma page prévue pour le résultat des recherches.

Dans mon "vieux" site il n'y avait pas ce problème, mais le formulaire de la case recherche qui s'affiche sur toutes les pages était différent.

Posté

Ton code me semble incomplet. Pour moi, le code sur formulaire devrait être celui-ci :

 

<script>
  (function() {
    var cx = '014582369123697633996%3A1qzmycgtgjs';
    var gcse = document.createElement('script');
    gcse.type = 'text/javascript';
    gcse.async = true;
    gcse.src = 'https://cse.google.com/cse.js?cx=' + cx;
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(gcse, s);
  })();
</script>
<gcse:searchbox-only resultsUrl="recherches.php"></gcse:searchbox-only>

 

Regarde ici :

https://developers.google.com/custom-search/docs/tutorial/implementingsearchbox

 

 

Posté

C'est pire ! Maintenant, même depuis la barre de recherche on n'obtient plus les résultats :-(

Je remets comme avant.

 

Édité

Quand je parle du formulaire, c'est celui qui est sur toutes les pages.

<form id="search" action="recherches.php" method="get" target="_top">
                    <div>
                <input type="hidden" name="cx" value="014582369123697633996:1qzmycgtgjs">
				<input type="hidden" name="cof" value="FORID:11">
                 <input class="input" placeholder="Recherche..." type="text"><input class="button" type="submit" value="">
                    </div>
             </form>
   </div>

 

Posté

Le cx ne devait pas être bon. retest avec le bon cx

 

<script>
  (function() {
    var cx = '014582369123697633996:1qzmycgtgjs';
    var gcse = document.createElement('script');
    gcse.type = 'text/javascript';
    gcse.async = true;
    gcse.src = 'https://cse.google.com/cse.js?cx=' + cx;
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(gcse, s);
  })();
</script>
<gcse:searchbox-only resultsUrl="recherches.php"></gcse:searchbox-only>

 

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...