Probleme resultat fil ariane
BMPCreated with Sketch.BMPZIPCreated with Sketch.ZIPXLSCreated with Sketch.XLSTXTCreated with Sketch.TXTPPTCreated with Sketch.PPTPNGCreated with Sketch.PNGPDFCreated with Sketch.PDFJPGCreated with Sketch.JPGGIFCreated with Sketch.GIFDOCCreated with Sketch.DOC Error Created with Sketch.
Question

Probleme resultat fil ariane

by
Jean_PaulD
Created on 2021-09-10 12:51:55 (edited on 2024-09-04 14:11:23) in Hébergements Web

Bonjour

Voici mon problème

J'ai mis un fil d'ariane sur mes pages

mon site: https://www.pyrenees-pireneus.com/
code fil ariane:
$def = "index";
$dPath = $_SERVER['PHP_SELF'];
$dChunks = explode("/", $dPath);

echo('Accueil > ');
for($i=1; $i echo(' if ($prChunks[0] == $def) $prChunks[0] = "";
$prChunks[0] = $prChunks[0] . "
";
}
else $prChunks[0]=$dChunks[$i] . ' > ';
echo('">');
echo(str_replace("_" , " " , $prChunks[0]));
}
?>

Mon problème est que le resultat quand il s'agit d'un directory me donne "directory/"
Pour le seo c'est un problème car il faudrait "directory/index.php"

J'ai essayé dans le fichier .htacces de mettre: DirectoryIndex index.php

Cela ne change rien

Pourriez vous m'aider


Merci d'avance

Jean-Paul


5 Replies ( Latest reply on 2021-09-11 06:35:25 by
Jean_PaulD
)

Bonjour,
Ça fait plaisir de voir un site développé à la main :D
Je n'ai pas constaté le problème en surfant sur votre site. Vous avez un exemple précis où on peut le voir ?
Normalement, tout les hébergements sont configurés avec le directoryIndex sur :
- index.html
- index.php
Il est donc inutile de préciser index.php dans vos liens.

PS : il faudrait (vraiment) arrêter l'ouverture d'un nouvel onglet après chaque clic sur un lien. Cela ne se fait pas :)

PS 2 : vous n'êtes pas au bon endroit pour poser des question sur le déveloopemetn PHP. Je vous conseil plutôt ici : https://www.developpez.net/forums/f25/php/langage/

Merci
Je sais que l'ouverture d'un nouvel onglet n'est pas terrible mais c'est le site de mon defunt frere qui y tenanit
Je vais a mesure supprimer cela

Pour voir le resultat allez sur une page apres plusieurs niveaux la ca gene
exemple sur page
https://www.1pireneus.com/Tourisme-Pyrenees/Ecotourisme-Pyrenees/index.phppireneus.com/Tourisme-Pyrenees/Ecotourisme-Pyrenees/index.php
sur le fil ariane je clique sur Tourisme Pyrénées et cela donne:
https://www.1pireneus.com/Tourisme-Pyrenees/pireneus.com/Tourisme-Pyrenees/
Il manque leindex.php
Pour le seo c'est pas terrible et les outils google n'aiment pas (moins grave)

Cordialement

Je vais mettre ma demande sur lien que vous m'indiquez

Ok je voie merci pour les précisions.

Désolé de vous contredire mais L'URL :
https://www.1pireneus.com/Tourisme-Pyrenees/pireneus.com/Tourisme-Pyrenees/
est plutôt la bonne et
https://www.1pireneus.com/Tourisme-Pyrenees/index.phppireneus.com/Tourisme-Pyrenees/index.php
ne l'est pas.

Comme votre site à le même contenu pour ces 2 URLs, Google doit vous descendre un peu pour Duplicate content.
Google à effectivement indexé vos pages avec index.php :(

Pour régler rapidement ce problème, il faut vous diriger vers une réécriture d'URL dans le fichier .htaccess à la racine de votre site.

Essayez ça :
` RewriteRule ^([^/]+)/index.php$ $1/ [L,R=301]`
Cela devrait rediriger en 301 tous les index.php vers le dossier :
Ex :
https://www.1pireneus.com/Tourisme-Pyrenees/index.phppireneus.com/Tourisme-Pyrenees/index.php
->
https://www.1pireneus.com/Tourisme-Pyrenees/pireneus.com/Tourisme-Pyrenees/


RewriteRule ^([^/]+)/index.php$ $1/ [L,R=301]


Donc en fait chaque fois que je mets une adresse de ce genre dans mon site je ne devrais pas mettre le "index.php"
Alors que je le fais toujours

Je viens de mettre votre code dans le .htacces
Ca ne change rien quand je demande la page avec .index.php quand je la mets a jour elle devrait supprimer le index.php
Merci quand même
je ne vais plus m'inquiéter

Cordialement

Jean-Paul

Pouvez vous donner le contenu de votre fichier .htaccess ?


Je ne peux pas le passer à chaque fois cela me donne vous ne pouvez pas mettre de liens ici

AddDefaultCharset utf-8

DirectoryIndex index.php

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
## http -> https
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE,QSA]

RewriteRule ^([^/]+)/index.php$ $1/ [L,R=301]

Pouvez vous essayer cela et me dire ?

AddDefaultCharset utf-8
DirectoryIndex index.php
RewriteEngine On

RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

## http -> https
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE,QSA]

## 301 des index.php vers dossier courant
RewriteRule (.*)index.php /$1 [R=302,NE,L,QSD]


AddDefaultCharset utf-8
DirectoryIndex index.php
RewriteEngine On

RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

## http -> https
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE,QSA]

## 301 des index.php vers dossier courant
RewriteRule (.*)index.php /$1 [R=302,NE,L,QSD]


ok ca marche tous les index.php sont supprimés

Merci

Jean-Paul

Excusez

Par hazard y a t il un moyen se supprimer tous les target=_blank?

Je vais les supprimer maintenant chaque fois que passe sur une page

Merci pour tout

Pour ça il faut utiliser une fonction de "chercher / remplacer partout" qui va être disponible dans le logiciel avec lequel vous modifiez le site.
Vous rechercher " target=_blank " et remplacez par rien.
A utiliser avec précaution, faite une sauvegarde des fichiers avant.

Merci c'est ce que vais faire!

Cordialement

Jean-Paul