1. Pour Black Friday on FRACASSE les prix ⚡ avec RM Tech Découverte
    Rejeter la notice

Galère pour supprimer index.php

Discussion dans 'URL Rewriting et .htaccess' créé par FB7, 12 Août 2020.

  1. FB7
    FB7 Nouveau WRInaute
    Inscrit:
    13 Juillet 2013
    Messages:
    27
    J'aime reçus:
    1
    Bonjour tout le monde,

    Je galère et c'est réellement un calvaire pendant un mois pour supprimer index.php dans mes urls j'ai vu un tas topics, un tas d'articles à ce sujet et franchement je suis epuisé je m'en remet à vous en espérant pourvoir réglé mon probleme qui traine. J'ai essayé plus d'une dizaine de fois le htaccess pour introduire la règle de suppressions qui semble différente d'un hébergeur à un autre. Les solutions que j'ai trouvés sont toujours des réponses pour supprimer l'index.php dans les urls du site je crois. Dans mon cas mes urls dans le site sont correctes telle par exemple:

    Code:
    https://www.domaine.com/gestion-des-articles 
    
    Mais dans les serp la page figure ainsi:
    Code:
    https://www.domaine.com/index.php/gestion-des-articles 
    
    En cliquant sur le lien j'atterris toujours avec
    Code:
    https://www.domaine.com/index.php/gestion-des-articles 
    
    Alors je ne sais pas si c'est google ou si c'est moi pour la question de l'affichage dans les serp

    J'ai récemment migrer de http vers https et mis FORCER HTTPS dans joomla

    Le dernier htaccess que j'utilise contient ceci :
    Code:
    RewriteEngine On
    RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
    RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
    RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
    RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
    
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    
    RewriteCond %{HTTP_HOST} ^DomaineSecondaire\.com$ [OR]
    RewriteCond %{HTTP_HOST} ^www\.DomaineSecondaire\.com$
    RewriteRule ^/?$ "https\:\/\/DomainePrincipal\.com\/" [R=301,L]
    
    RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
    RewriteRule ^.*$ https://www.%1%{REQUEST_URI} [L,NE,R=301]
    
    La redirection du domaine secondaire vers le principal je l'ai faite depuis le cpanel qui à inscrit ces règles.
    Peut être que mes règles ne sont dans le bon ordre ?

    Dans la search console je constate dans Indexée, mais non envoyée via un sitemap que mes urls contiennent index.php et dans Couverture, Envoyée et indexée mes urls sont correctes (sans index.php)

    Si vous pouvez m'eclairer car je n'ai plus de souffle avec cette galère qui ne cesse de galoper.
     
  2. rick38
    rick38 WRInaute passionné
    Inscrit:
    23 Février 2013
    Messages:
    1 543
    J'aime reçus:
    210
    Un truc dans ce genre :
    Code:
    RewriteRule ^index.php/(.*)$ /$1 [R=301,L]
    
     
    FB7 apprécie ceci.
  3. FB7
    FB7 Nouveau WRInaute
    Inscrit:
    13 Juillet 2013
    Messages:
    27
    J'aime reçus:
    1
    En remplacement de la ligne ?
    RewriteRule . /index.php [L]
    Merci.
     
    #3 FB7, 12 Août 2020
    Dernière édition: 12 Août 2020
  4. FB7
    FB7 Nouveau WRInaute
    Inscrit:
    13 Juillet 2013
    Messages:
    27
    J'aime reçus:
    1
    Je précise encore que mes liens dans le site ne contiennent pas d'index.php mais seulement dans les resultats du moteurs (pas toutes les pages) et dans la search console. Dans la search console c'est https://www.domaine.com/index.php/gestion-des-articles et lorsque je fais ouvrir dans un nouvel onglet j'atterris dans mon site avec toujours https://www.domaine.com/index.php/gestion-des-articles
    Si je comprend bien cette page devrais être rediriger sans l'index.php avec les règles posés dans le htaccess ?
     
  5. rick38
    rick38 WRInaute passionné
    Inscrit:
    23 Février 2013
    Messages:
    1 543
    J'aime reçus:
    210
    A la place de tout ce bloc.

    Et ajouter aussi
    Code:
    RewriteCond %{QUERY_STRING} ^$
    RewriteRule ^index.php$ / [L,R=301]
    
    Bref se débarrasser du "index.php" avec des redirections pour qu'il n'apparaisse plus jamais, et Google mettra à jour ses urls petit à petit.
     
    FB7 apprécie ceci.
  6. FB7
    FB7 Nouveau WRInaute
    Inscrit:
    13 Juillet 2013
    Messages:
    27
    J'aime reçus:
    1
    Merci rick38,

    J'accede ici pour poster ma solution et je trouve la votre merci.
    Je l'ai essayer hier soir sans rajouter la 2eme ligne et ca n'avais pas marcher.
    Code:
    RewriteRule ^index.php$ / [L,R=301]
    
    Bon, je ne vais pas essayer une 2eme fois votre solution du moment que ca marche après une vingtaine de tentative et si ce n'est pas plus ... et, avec le secours d'une boite de paracetamol à porté de la main

    Les regles suivantes ont solutionnées mon problème plus d'index.php, mais bon, c'est peut être différent d'un hebergeur à un autre:

    Code:
    RewriteBase /
    # Removes index.php from ExpressionEngine URLs
    RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
    RewriteCond %{REQUEST_URI} !/system/.* [NC]
    RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L]
    
    # Directs all EE web requests through the site index file
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ /index.php/$1 [L]
    
    
    RewriteCond %{HTTP_HOST} ^DomaineSecondaire\.com$ [OR]
    RewriteCond %{HTTP_HOST} ^www\.DomaineSecondaire\.com$
    RewriteRule ^/?$ "https\:\/\/DomainePrincipal\.com\/" [R=301,L]
    
    RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
    RewriteRule ^.*$ https://www.%1%{REQUEST_URI} [L,NE,R=301]
    
    
    La source est ici:
    https://stackoverflow.com/questions/9608366/remove-index-php-from-url-with-htaccess


    Code:
    RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
    RewriteRule ^.*$ https://www.%1%{REQUEST_URI} [L,NE,R=301]
    
    Cette partie je l'ai faite avant depuis le cpanel il permet de régler le message de google analytics Nom d'hôtes redondants, pour le duplicate content. Alors on verra après si y a plus d’embûche en cours de route.

    Merci.
     
  7. FB7
    FB7 Nouveau WRInaute
    Inscrit:
    13 Juillet 2013
    Messages:
    27
    J'aime reçus:
    1
    Oups .. j'ai oublié:
    Code:
    RewriteCond %{REQUEST_URI} !/system/.* [NC]
    
    Je n'ai pas compris cette ligne d'un dossier nommé system ?
    Merci.
     
  8. FB7
    FB7 Nouveau WRInaute
    Inscrit:
    13 Juillet 2013
    Messages:
    27
    J'aime reçus:
    1
    Merci rick38,

    Ca n'a pas marcher probablement spécifique à certains serveurs en tout cas c'est régler et j'ai posté ma solution c'est pas visible car en attente d'approbation par un modérateur merci quand même.
     
Chargement...
Similar Threads - Galère supprimer php Forum Date
Une bonne journée galère qui commence Le café de WebRankInfo 16 Juin 2019
Passer mon site en https, galère en vue Développement d'un site Web ou d'une appli mobile 26 Janvier 2019
Crawl AJAX - galère, galère Crawl et indexation Google, sitemaps 21 Décembre 2015
newbie qui galere pour un truc bete URL Rewriting et .htaccess 27 Octobre 2013
OVH mutu quel galère en ce moment ? Administration d'un site Web 1 Mars 2013
Oulalala, erreur HTTP 500 grosse galère. Administration d'un site Web 6 Février 2013
je galere pour envoyer un petit mailing : help ! Développement d'un site Web ou d'une appli mobile 23 Juin 2012
Les galères et autres expériences risibles du référencement naturel! Débuter en référencement 30 Mars 2012
Cohabitation CMS : galère .htaccess URL Rewriting et .htaccess 17 Mai 2011
facebook, grosse galère... Facebook 18 Avril 2011