exception dans les règles de réécriture

Discussion dans 'URL Rewriting et .htaccess' créé par Canard, 1 Août 2005.

  1. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
    Bonjour,

    Grace a l'url rewriting je redirige tous les visiteurs qui accedent a :
    www.example.com/dossier_tape_au_hasard/

    vers pirate.php

    or j'ai un dossier images et j'aimerai qu'il en aient acces en tapant
    www.example.com/images <-> et donc ne pas etre redirigé vers pirate.php

    je sias qu'il existe des excetions mais je ne sais pa m'en servir quelqu'un aurai t'il un totorial ou un aide à m'aaporter ?
    merci beaucoup
     
  2. WebRankInfo
    WebRankInfo Admin
    Membre du personnel
    Inscrit:
    19 Avril 2002
    Messages:
    20 503
    J'aime reçus:
    629
    il suffit de créer une règle spécifique à ton dossier image, de la mettre avant l'autre règle dans ton fichier .htaccess, et d'indiquer [L] à la fin de cette règle (pour dire "Last", pour qu'aucune autre règle ne soit appliquée)
     
  3. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
    euh...

    en fait j'ai ça


    Code:
    RewriteRule ^(.*)/$ ./piege.php [L]
    RewriteRule ^([^/]+)/(.+)$ ./piege.php [L]

    je dois rajouter quoi ? j'ai rien pigé...
     
  4. correiaj
    correiaj WRInaute impliqué
    Inscrit:
    25 Avril 2005
    Messages:
    988
    J'aime reçus:
    0
    Une condition serait bien mieux:

    avec ta règle, marque ça:

    Code:
    RewriteCond %{Request_URI} !/images
     
  5. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
    wa super merci... mais j'aimerai bien comprendre ....
    pourrai tu m'expliquer cette ligne ?

    qu'entends tu par ce serais mieux une condition ? (exemple ?)
     
  6. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
  7. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
  8. correiaj
    correiaj WRInaute impliqué
    Inscrit:
    25 Avril 2005
    Messages:
    988
    J'aime reçus:
    0
    et bien rajoute:
    Code:
    .*
    après images
     
  9. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
    merci pour ta réponse mais cela ne marche pas...
     
  10. correiaj
    correiaj WRInaute impliqué
    Inscrit:
    25 Avril 2005
    Messages:
    988
    J'aime reçus:
    0
    Code:
    !^.*/images/.*$
    ça marche pas non plus?
     
  11. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
    euh non j'ai ça :

    Code:
    Options +FollowSymlinks
    RewriteEngine on 
    RewriteCond %{Request_URI} !^.*/images/.*$ 
    RewriteRule ^(.*)/$ ./pirate.php 
    RewriteRule ^([^/]+)/(.+)$ ./pirate.php 
    et cela ne marche pas enfin quand je vais dans images -> c'est bon mais quand je vais dans images/xx.jpg cela me renvoi vers pirate.php
     
  12. correiaj
    correiaj WRInaute impliqué
    Inscrit:
    25 Avril 2005
    Messages:
    988
    J'aime reçus:
    0
    C´est normal que ça ne mache pas, la condition ne s´applique que à la première règle...
    essaie ça:
    Code:
    RewriteCond %{Request_URI} !^.*/images/.*$
    RewriteRule ^([^/]+)/(.*)$ ./pirate.php
     
  13. Patrice A.
    Patrice A. WRInaute passionné
    Inscrit:
    11 Février 2005
    Messages:
    2 074
    J'aime reçus:
    0
    correiaj, ^signifie "au début", et $ "à la fin"
    donc
    Code:
    ^.*/images/.*$
    ça veut dire qu'au début, il doit ABSOLUMENT y avoir euh.. n'importe quoi,
    puis quelque part, /images/,
    puis à la fin, ABSOLUMENT, euh... n'importe quoi.

    Alors ça serait plus simple d'écrire
    Code:
    .*/images/.*
    qui veut dire "la chaîne contient, n'importe où, /images/

    ;)

    De plus,
    Code:
    ^([^/]+)/(.*)$
    veut dire
    au début, n'importe quoi sauf un slash (au moins une fois) puis un slash, puis n'importe quoi à la fin.
    On peut encore une fois se débarasser du $ qui représente un test inutile.

    Pourquoi pas
    Code:
    RewriteCond %{Request_URI} !^.*/images/.*
    RewriteRule ^([^/]+)/(.*) ./pirate.php
    ?
     
  14. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
    Code:
    RewriteCond %{Request_URI} !^.*/images/.* 
    RewriteRule ^([^/]+)/(.*) ./pirate.php
    MERCI parfait ! (et doublement merci pour les explications!)
     
  15. correiaj
    correiaj WRInaute impliqué
    Inscrit:
    25 Avril 2005
    Messages:
    988
    J'aime reçus:
    0
    Bon ensuite il faut mettre le drapeau NC et remettre sans les .* devant et derrière images car sinon, tu peut accéder à n´importe quel directorie images:
    /images/ mais aussi /../../images et ainsi de suite
     
  16. Patrice A.
    Patrice A. WRInaute passionné
    Inscrit:
    11 Février 2005
    Messages:
    2 074
    J'aime reçus:
    0
    Il faut effectivement enlever le .* avant images, bien vu :oops:

    Par contre pas celui d'après.
    Et le drapeau NC permettrait d'accéder à /Images/ ou /iMaGeS/ mais je ne pense pas que ça soit souhaité.
     
  17. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
    oui.
    tu veux dire [NC] ?
     
  18. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
    euh juste un truc .....

    pour que le visiteur qui tape www.monsite.com/nimporte_quoi
    (il a oublié le / final ) soit redirigé grace a l'url rewriting vers
    slash.php

    j'ia essayé ça : RewriteRule ^([^/]+) ./slash.php mais cela ne parche pas ....
     
  19. nikoshr
    nikoshr WRInaute occasionnel
    Inscrit:
    10 Juillet 2003
    Messages:
    295
    J'aime reçus:
    0
    Code:
    RewriteRule [^/]$ slash.php
    
    Attention, ca marche pour toutes les requêtes, y compris les images, feuilles de style, etc.
     
  20. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
    ah ouais il faut que je mette mon slash final partout alors ? pas moyen de faire autrmenet ?
     
  21. nikoshr
    nikoshr WRInaute occasionnel
    Inscrit:
    10 Juillet 2003
    Messages:
    295
    J'aime reçus:
    0
    Ajouter des règles d'arrêt, par exemple
    Code:
    RewriteRule \.(gif|jpg|css)$ - [L]
    RewriteRule [^/]$ slash.php 
    
     
  22. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
    wa parfait merci ! euh pour toutes les extensions je pet
    RewriteRule \.([a-z])$ - [L] ?
     
  23. Canard
    Canard Nouveau WRInaute
    Inscrit:
    1 Août 2005
    Messages:
    13
    J'aime reçus:
    0
    en fait non c'ets bon merci :) je remercie vivement tous les gens qui m'ont aidé merci beaucoup
     
  24. assurancedudoubs
    assurancedudoubs Nouveau WRInaute
    Inscrit:
    23 Novembre 2014
    Messages:
    1
    J'aime reçus:
    0
    hrlp besoin d aide : exception dans les règles de réécriture

    je vous explique mon probleme.

    nous avons mit un htaccess sur notre site afin d'avoir une redirection permanente 301

    j aimerais mettre une exception sur un repertoire de notre site internet pour éviter le message vous avez une redirection en boucle. ( ça ne vient pas de mes cookies..... )

    Besoin d aide, j aimerais avoir une exception sur un repertoire type

    www.assurancedudoubs.fr/ (repertoire )

    voici le code :

    RewriteEngine On

    # Some hosts may require you to use the `RewriteBase` directive.
    # If you need to use the `RewriteBase` directive, it should be the
    # absolute physical path to the directory that contains this htaccess file.
    #
    # RewriteBase /
    SetEnv PHP_VER 5_4

    #Options +Indexes

    Options +FollowSymlinks
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^assurancedudoubs.fr$
    RewriteRule ^(.*) http://www.assurancedudoubs.fr/$1 [QSA,L,R=301]



    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [QSA,L]
     
Chargement...
Similar Threads - exception règles réécriture Forum Date
Comment faire marcher des Exceptions / Evénements personnalisés Administration d'un site Web 18 Novembre 2020
HTTPS faire une exception Développement d'un site Web ou d'une appli mobile 15 Avril 2017
PageSpeed compression activée mais exception sur certains CSS Google : l'entreprise, les sites web, les services 2 Avril 2017
exception sur sous-répertoire (nécessite ajout index.php) URL Rewriting et .htaccess 26 Août 2015
Exception htaccess robots.txt URL Rewriting et .htaccess 22 Mai 2014
Message Google : Trafic exceptionnel rencontré sur votre réseau informatique Le café de WebRankInfo 9 Avril 2013
liste d'exceptions google Débuter en référencement 28 Février 2013
Pic exceptionnel de visites ? Google Analytics 14 Février 2013
Htaccess, exception a une règle URL Rewriting et .htaccess 10 Juin 2012
Gérer les exceptions de redirection URL Rewriting et .htaccess 20 Février 2012