Je bloque sur le rewriting des URL contenant un ?

Discussion dans 'URL Rewriting et .htaccess' créé par steph56, 3 Septembre 2019.

  1. steph56
    steph56 Nouveau WRInaute
    Inscrit:
    3 Septembre 2019
    Messages:
    3
    J'aime reçus:
    0
    Bonjour,
    après plusieurs jours d'apprentissage sur internet et d'essais par tâtonnement concernant le rewriting avec .htacess, je suis arrivé à plusieurs redirections qui marchent , comme par exemple :
    RewriteRule ^permis-poids-lourds-annemasse(.+)$ /userfiles/redirections/Formations-au-Permis-LOURD.php [R=301,L]
    RewriteRule ^(.+)/planning-stage-code-fill(.+)\.pdf$ /userfiles/redirections/Stage-CODE-Accelere-en-3-jours.php [R=301,L]

    Pa contre, je bute actuellement sur celles ci, qui m'affiche ma page 404 :
    #RewriteRule ^(.+)/Permis-D1--Transp.-en-Com.-16-places-$ /userfiles/redirections/Permis-D1-Transp.-en-Com.-16-places.php [R=301,L]
    #RewriteRule ^(.+)/Permis-D1-(Transp.-en-Com.-16-places)$ /userfiles/redirections/Permis-D1-Transp.-en-Com.-16-places.php [R=301,L]

    Comme l'URL complète :
    "mon-site.com/?Formations-au-Permis-LOURD/Permis-D1--Transp.-en-Com.-16-places-"
    comporte un ? et éventuellement des ( et ), je soupçonne d'abord le point d'interrogation comme cause de la non redirection, puis je pense aussi que les accolades sont aussi un handicap.

    Qu'en pensez vous ?
    Je ne pense que cela soit un problème pour les spécialistes visitant WebRankInfo...

    j'ai essayé aussi avec des RewriteCond... mais je sais mal les utiliser...

    Merci d'avance à l'âme bienveillante qui va m'aider à résoudre ce casse tête...

    Cordialement, Stéphane
     
  2. saluts92
    saluts92 WRInaute impliqué
    Inscrit:
    12 Avril 2006
    Messages:
    692
    J'aime reçus:
    25
    effectivement toutes les données qui sont à droite du ? sont des paramètres et ne font donc pas parti à proprement parler de ton URL

    les paramètres passées avec ton URL sont à exploiter dans tes programmes PHP (ne pas oublier le drapeau QSA dans ta règle de réécriture) ou dans ton htaccess avec des RewriteCond

    également les points (.) sont des caratères réservés, il faut donc que tu les échappent (\.) dans tes expressions
     
  3. steph56
    steph56 Nouveau WRInaute
    Inscrit:
    3 Septembre 2019
    Messages:
    3
    J'aime reçus:
    0
    Merci pour votre aide rapide...
    j'ai essayé plusieurs syntaxes dont celle ci, mais toujours rien... Noter qu'à droite il n'y a plus de paramètres. Je veux donc simplement shunter (ou escamoter) le ? pour pouvoir reconnaitre l'URL d'origine. il me faut peut être remplacer d'abord le ? par un - par exemple dans l'URL. mais je ne peux pas avoir accès au PHP, car je suis sur CMSimple_xh. je fais donc tout dans le htaccess.

    RewriteRule ^(\?)Formations(.+)/Permis-D(.+)$ /userfiles/redirections/Permis-D-Transport-en-Commun.php [QSA,R=301,L] ne marche pas...

    URL d'origine à remplacer =
    https://www.monsite.com/?Formations-au-Permis-LOURD/Permis-D--Transport-en-Commun-
    URL de destination =
    /userfiles/redirections/Permis-D-Transport-en-Commun.php

    Pouvez vous me proposer 1 ou 2 rewriterule que je puisse essayer ?

    Merci pour votre patience... Stephane
     
  4. KOogar
    KOogar WRInaute accro
    Inscrit:
    16 Novembre 2004
    Messages:
    4 470
    J'aime reçus:
    48
    Bjr,

    et en capturant que la fin de la chaine :
    Code:
    RewriteCond   Permis-LOURD/([aZ-\.]+) [QSA,R=301,L]
    RewriteRule   $  /userfiles/redirections/%1
    
     
  5. steph56
    steph56 Nouveau WRInaute
    Inscrit:
    3 Septembre 2019
    Messages:
    3
    J'aime reçus:
    0
    Bonjour,

    Votre proposition m'a inspiré... merci de votre aide...
    J'ai maintenant un rewriting avec des ? dans l'url, et cela marche !!! (enfin!)

    Rappel :
    URL d'origine à remplacer =
    https://www.monsite.com/?Formations-au-Permis-LOURD/Permis-D--Transport-en-Commun-
    URL de destination =
    /userfiles/redirections/Permis-D-Transport-en-Commun.php

    mon rewriting qui marche !
    RewriteCond %{QUERY_STRING} ^(.*)Permis-D-(.*)$
    RewriteRule ^$ /userfiles/redirections/Permis-D-Transport-en-Commun.php [R=301,L]

    Grace à ce problème rencontré et avec votre aide (merci à tous) j'ai appris certaines choses sur les RewritCond (règles et syntaxe)

    Stephane
     
Chargement...
Similar Threads - bloque rewriting contenant Forum Date
URL Rewriting et Metas différents... Je suis bloqué ! URL Rewriting et .htaccess 17 Janvier 2009
Mon site Web est bloqué par Facebook, que faire ? Facebook 5 Décembre 2019
Search Console Prestashop | Robot.txt bloque des URL mais Outil de test du fichier robots.txt l'Authorise... Crawl et indexation Google, sitemaps 21 Novembre 2019
Search Console Images bloquées ... malgré absence de robots.txt Crawl et indexation Google, sitemaps 31 Octobre 2019
Chrome va bloquer les ressources HTTP sur pages HTTPS Référencement Google 5 Octobre 2019
Bloquer accès admin Google Analytics par adresse IP Google Analytics 19 Septembre 2019
Comment bloquer les vidéos automatiques ? Facebook 28 Juillet 2019
Search Console bloquée par le fichier robots.txt Crawl et indexation Google, sitemaps 25 Juin 2019
Réseau de site backlinks : comment bloquer par htaccess ? Tests et études de cas 6 Juin 2019
Site non responsive, ressources bloquées robots.txt Crawl et indexation Google, sitemaps 15 Avril 2019
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice