web-dev-qa-db-fra.com

Toute URL inexistante contenant certains numéros, affiche la page d'accueil au lieu d'une erreur 404

C'est quelque chose que j'ai remarqué sur l'un de mes sites Web:

Si j'ajoute certains chiffres après l'URL de la page d'accueil, cela ne me donnera pas un 404, comme prévu. Il affiche la page d'accueil, avec le titre de la page du navigateur tiré de l'un des autres éléments du menu. Voici quelques exemples:

http://www.example.com/36-this-menu-item-does-not-exist Dans l'URL ci-dessus, si vous changez le 36 en 32 ou 37, cela fera la même chose - http://www.example.com/12-this-shows-a-404-error

Est-ce que quelqu'un a vu quelque chose comme ça?

Je me demande si cela a à voir avec SEF Urls ou peut-être autre chose.

J'ai vérifié mon .htaccess pour m'assurer qu'il n'y avait pas de redirection avec ces numéros dans l'URL.

Tous les conseils seront appréciés.

1
PaxAnura

C'est juste la façon dont le routeur fonctionne. Le numéro est l'ID de l'article. Joomla a besoin de savoir comment convertir l'URL en une page. Il est donc possible de rechercher le numéro qui se trouve dans l'URL et de voir s'il correspond à un article.

Tout ce qui est au-delà du nombre est destiné à des liens lisibles par SEO/humain, mais Joomla n'a pas besoin de le savoir, cela peut donc être n'importe quoi.

Vos 404 pages ne contiennent probablement pas d’articles avec un identifiant correspondant.

Si vous voulez voir comment cela fonctionne, cela se trouve dans components/com_content/router.php. C'est assez bien commenté sur le processus, le bit qui semble s'appliquer dans ce cas est le suivant:

/*
         * If there is only one segment, then it points to either an article or a category.
         * We test it first to see if it is a category.  If the id and alias match a category,
         * then we assume it is a category.  If they don't we assume it is an article
         */
1
Richard B

Oui, j'ai déjà vu cela se produire et cela a été causé par le composant vide .

Donc, je suppose que vous utilisez probablement ce composant pour avoir une page d’accueil réservée aux modules.

Malheureusement, il n'y avait pas de solution à ce problème, la dernière fois que j'ai vérifié et je reviens rapidement à la méthode de base - en disposant par exemple d'une page d'accueil d'articles avec aucun article ou de modules de chargement de page d'article.

0
FFrewin