mod_rewrite règle

  • Cae
  • Expert
  • Expert
  • Avatar de l’utilisateur
  • Inscription: Fév 25, 2004
  • Messages: 734
  • Status: Offline

Message Mai 16th, 2010, 7:35 pm

Im essayant de faire une règle de réécriture à la carte
Code: [ Select ]
/alpha/beta/gamma/delta.html?var1=a&var2=b

à
Code: [ Select ]
/?id=alpha:beta:gamma:delta&var1=a&var2=b


Id de tel pour être capable de gérer un nombre variable de répertoires (alpha, bêta, gamma, etc) et un nombre variable de paires var supplémentaires ainsi.

Toute aide serait appréciée.

Merci.
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Mai 16th, 2010, 7:35 pm

  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Inscription: Fév 10, 2004
  • Messages: 13455
  • Loc: Florida
  • Status: Offline

Message Mai 16th, 2010, 9:58 pm

Votre utilisation de colonnes à une exigence prévue dans la pierre?

Si vous pouvez travailler avec des séparateurs de répertoires ayant lieu de colons, quelque chose comme ça pourrait fonctionner pour vous.

APACHE Code: [ Select ]
RewriteBase /test/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)\.html ?id= [QSA,L,NC]
  1. RewriteBase /test/
  2. RewriteCond %{REQUEST_FILENAME} !-f
  3. RewriteRule ^(.+)\.html ?id= [QSA,L,NC]
Strong with this one, the sudo is.
  • Cae
  • Expert
  • Expert
  • Avatar de l’utilisateur
  • Inscription: Fév 25, 2004
  • Messages: 734
  • Status: Offline

Message Mai 17th, 2010, 6:45 am

Merci joebert, je suis entièrement d'espacées sur le drapeau QSA, vous n'avez aucune idée à quel point j'ai été me cogner la tête contre le mur à ce sujet.

En ce qui concerne le côlon, ce qui est de la voie interne que les formats CMS ses identifiants. Je vais passer la source et voir combien de douleur, il sera à modifier que pour utiliser des barres obliques à la place des colons, mais s'il ya un moyen de faire un fond Rechercher / Remplacer sur la réécriture var peut me faire gagner l'ensemble de beaucoup de tracas.

Merci.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Inscription: Fév 10, 2004
  • Messages: 13455
  • Loc: Florida
  • Status: Offline

Message Mai 17th, 2010, 3:22 pm

Eh bien, en fonction de votre accès à la configuration, vous pouvez être en mesure d'utiliser RewriteMap avec un Programme externe de réécriture de le faire. RewriteMap est uniquement disponible dans la configuration du serveur ou le contexte d'hôte virtuel bien, pas htaccess. Eh bien, techniquement, la carte créée est disponible dans htaccess via RewriteRule, mais la directive RewriteMap qui définit la carte n'est pas.

Cela vous donnera une variabilité à peu près illimitée.

Si vous savez qu'il ne sera jamais plus que dire, annuaires X, vous pouvez utiliser une collection de déclarations RewriteRule qui commence avec un match qui aurait le nombre maximum d'annuaires à un peu le nom du fichier.

Quelque chose comme

APACHE Code: [ Select ]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([a-z]+)/([a-z]+)/([a-z]+)\.html$ /?id=:: [QSA,L
 
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([a-z]+)/([a-z]+)\.html$ /?id=: [QSA,L]
 
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([a-z]+)\.html$ /?id= [QSA,L]
  1. RewriteCond %{REQUEST_FILENAME} !-f
  2. RewriteRule ^([a-z]+)/([a-z]+)/([a-z]+)\.html$ /?id=:: [QSA,L
  3.  
  4. RewriteCond %{REQUEST_FILENAME} !-f
  5. RewriteRule ^([a-z]+)/([a-z]+)\.html$ /?id=: [QSA,L]
  6.  
  7. RewriteCond %{REQUEST_FILENAME} !-f
  8. RewriteRule ^([a-z]+)\.html$ /?id= [QSA,L]
Strong with this one, the sudo is.
  • Cae
  • Expert
  • Expert
  • Avatar de l’utilisateur
  • Inscription: Fév 25, 2004
  • Messages: 734
  • Status: Offline

Message Mai 20th, 2010, 7:59 am

Merci Joe, je me suis retrouvé en train d'écrire un tas de règles statiques, comme vous l'avez suggéré, et puis avoir de rebond à l'utilisateur d'une page d'erreur si elle va sur le nombre précis de règles.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Inscription: Fév 10, 2004
  • Messages: 13455
  • Loc: Florida
  • Status: Offline

Message Mai 20th, 2010, 3:40 pm

Im curieux de savoir ce qui CMS que vous utilisez, ou si vous utilisez quelque chose en interne. :D
Strong with this one, the sudo is.
  • Cae
  • Expert
  • Expert
  • Avatar de l’utilisateur
  • Inscription: Fév 25, 2004
  • Messages: 734
  • Status: Offline

Message Mai 24th, 2010, 6:19 am

Ses ce vieux kludgy chose à l'interne qui a été développé ans et la gestion ne nous laissera pas se débarrasser, un peu comme son bébé fait leur couverture...Nous avons donc coincé formant des taches sommaire de ce genre pour la mise en œuvre de nouvelles fonctionnalités, car c'est plus facile que d'essayer de déchiffrer le code de base mal écrits anciens.

des moments de plaisir :-)

Afficher de l'information

  • Total des messages de ce sujet: 7 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 209 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC