URL rewriting et REGEX bonnes pratiques

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par seaquest45, 9 Septembre 2020.

  1. seaquest45
    seaquest45 Nouveau WRInaute
    Inscrit:
    9 Septembre 2020
    Messages:
    3
    J'aime reçus:
    0
    Bonjour,

    Je commence a me familiariser avec les concepts de clean URL en utilisant le module rewrite d'Apache 2.4.

    Pour faire court, plus je lis et plus je suis perdus en matière de bonnes pratiques.

    Je cherche a savoir si on doit privilégier le Match avec plus de règles simple ou moins de règles mais plus complexes. Par exemple:

    http://monsite/(devel ou prod)/(b1 ou b2)/([0-9]{10})

    Renvoi à http://monsite/api_(dev|run)/index.php?p1=$1&id=$2

    Est-ce une bonne pratique ou si on doit faire une règle par condition devel ou prod?

    Au pire (.*) renvoi a error.php qui retourne un header 403, mais est-ce une bonne pratique d'utiliser des IF et si oui, comment?

    Merci d'avances pour vos réponses.

    Martin
     
  2. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 072
    J'aime reçus:
    295
  3. seaquest45
    seaquest45 Nouveau WRInaute
    Inscrit:
    9 Septembre 2020
    Messages:
    3
    J'aime reçus:
    0
    AHMA? Ok lol....

    En fait je suis d'accord mais comment implémenter in IF THEN ELSE a plusieurs niveaux dans une seule règle ?
     
  4. seaquest45
    seaquest45 Nouveau WRInaute
    Inscrit:
    9 Septembre 2020
    Messages:
    3
    J'aime reçus:
    0
    Voici en concret ce que je tente de faire:

    J'ai mon site
    • http://{FQND}/htdocs/production/inventaire.php?p1=1&p2=2&...pn={n}
    • http://{FQND}/htdocs/developpement/inventaire.php?p1=1&p2=2&...pn={n}

    Ayant un site en développement, et utilisant des "clean URL" pour sécurisé le contenue des paramètres et ne pas exposer la structure de mon site, voici mes règles .htaccess qui j'ai implémenté.

    Code:
    #Disable access to .htaccess file
    <Files .htaccess>
        order allow,deny
        deny from all
    </Files>
    
    #Disable access to .htaccess file
    <Files .htaccess>
        order allow,deny
        deny from all
    </Files>
    
    #REWRITE PART AND CONDITIONS
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{HTTPS} off
    
    ### GOOD WAY
    RewriteRule ^(devel|prod)/inventory/([0-9]{10})$ %{REQUEST_SCHEME}://%{HTTP_HOST}/htdocs/(developpement|production)/inventaire.php?action=view&item=$1 [L]
    
    
    ### BAD WAY (as far as I know ;))
    RewriteRule ^devel/inventory/([0-9]{10})$ %{REQUEST_SCHEME}://%/([0-9]{10})$ %{REQUEST_SCHEME}://%{HTTP_HOST}/htdocs/developpement/inventaire.php?action=view&item=$1 [L]
    
    RewriteRule ^prod/inventory/([0-9]{10})$ %{REQUEST_SCHEME}://%/([0-9]{10})$ %{REQUEST_SCHEME}://%{HTTP_HOST}/htdocs/production/inventaire.php?action=view&item=$1 [L]
    
    RewriteRule ^(.*)$ %{REQUEST_SCHEME}://%{HTTP_HOST}/htdocs/generic/error.php?code=403 [R=403,L]]?
    
     
    #4 seaquest45, 9 Septembre 2020
    Dernière édition: 9 Septembre 2020
Chargement...
Similar Threads - rewriting REGEX bonnes Forum Date
supprimer /index.html sans url rewriting, possible ? URL Rewriting et .htaccess 13 Novembre 2019
Je bloque sur le rewriting des URL contenant un ? URL Rewriting et .htaccess 3 Septembre 2019
récupération du get après rewriting URL Rewriting et .htaccess 21 Juin 2019
Ralentissement url rewriting URL Rewriting et .htaccess 1 Mai 2019
URL Rewriting Débuter en référencement 17 Avril 2019
Conflit de redirection 301 et Urlrewriting Netlinking, backlinks, liens et redirections 20 Février 2019
URL REWRITING et redirection 301 URL Rewriting et .htaccess 24 Janvier 2019
URL Rewriting : difficultés avec RewriteCond ? URL Rewriting et .htaccess 5 Décembre 2018
Résolu URL Rewriting : Garder l'adresse non transformée dans le navigateur URL Rewriting et .htaccess 2 Décembre 2018
Mes débuts dans l'URL Rewriting URL Rewriting et .htaccess 14 Novembre 2018