Problème d'écriture de regex

  • Auteur de la discussion Auteur de la discussion adripop
  • Date de début Date de début
Nouveau WRInaute
Bonjour la communauté.
Merci à tous ceux qui ont rédigé des articles et contribués sur les tutorials d'url rewriting.
J'ai un problème concernant le sujet ( normal vous me direz :P ).

Alors, je travaille sous MAMP PRO avec php 4 sous MAC OS X.4.9, mamp pro dit que j'ai bien le rewrite_module d'activé.
J'ai une vhost de configuré de type domain.com . qui est enfait le dossier v4.
Mon index.php reçoit comme script :
index.php?ville=nom-ville&activite=nom-activite

le nom de ville contient des tirets ainsi que le nom d'activité, les deux sont écrits en minuscule et ne contiennent pas d'accent.

Maintenant mon .htaccess que j'ai placé dans v4 contient :



# Le serveur doit suivre les liens symboliques :
Options +FollowSymlinks

# Activation du module de réécriture d'URL :
RewriteEngine on

#--------------------------------------------------
# Règles de réécriture d'URL :
#--------------------------------------------------


RewriteRule ^ville(^[-a-z]*).htm$ index.php?ville=$1 [L]


j'ai créé pour l'instant qu'une règle pour faire mes testes.
Quand je tape http://domaine.com/ville.htm le serveur me dit que la page n'éxiste pas.

Si quelqu'un a une idée d'où vient le problème, merci de m'éclairer :)
 
Nouveau WRInaute
Re: MAMP me causerait-il des soucis ?

adripop a dit:
Bonjour la communauté.
Merci à tous ceux qui ont rédigé des articles et contribués sur les tutorials d'url rewriting.
J'ai un problème concernant le sujet ( normal vous me direz :P ).

Alors, je travaille sous MAMP PRO avec php 4 sous MAC OS X.4.9, mamp pro dit que j'ai bien le rewrite_module d'activé.
J'ai une vhost de configuré de type domain.com . qui est enfait le dossier v4.
Mon index.php reçoit comme script :
index.php?ville=nom-ville&activite=nom-activite

le nom de ville contient des tirets ainsi que le nom d'activité, les deux sont écrits en minuscule et ne contiennent pas d'accent.

Maintenant mon .htaccess que j'ai placé dans v4 contient :



# Le serveur doit suivre les liens symboliques :
Options +FollowSymlinks

# Activation du module de réécriture d'URL :
RewriteEngine on

#--------------------------------------------------
# Règles de réécriture d'URL :
#--------------------------------------------------


RewriteRule ^ville(^[-a-z]*).htm$ index.php?ville=$1 [L]


j'ai créé pour l'instant qu'une règle pour faire mes testes.
Quand je tape http://domaine.com/ville.htm le serveur me dit que la page n'éxiste pas.

Si quelqu'un a une idée d'où vient le problème, merci de m'éclairer :)


Y un soucis : RewriteRule ^ville(^[-a-z]*).htm$ index.php?ville=$1 [L] devrait donner : -http://domaine.com/villenomdelaville.htm

Essayez plutôt quelque chose comme ça :
RewriteRule ^ville-(^[-a-z]*)-(^[-a-z]*)\.htm$ index.php?ville=$1&activite=$2 [L]

Vos pages seront de la forme : -http://domaine.com/ville-nomville-nomactivite.htm
 
Nouveau WRInaute
Je vous remercie pour votre attention, j'ai fait les changements que vous m'avez conseillé.

Le mod_rewrite n'a pas l'air de marcher c'est assez étrange je vais tester sur une autre plateforme.

Merci pour la réponse.


edit :

Tout marche presque parfaitement, merci!
J'ai juste une dernière question, sachant que les espaces de mes villes sont changer en tirer, exemple ( lacanau lac = lacanau-lac ) et que c'est pareil pour les activités, comment faire en sorte que l'url rewriting comprennent bien que castelnau-assurance.htm n'est pas la ville Castelnau Assurance mais la ville Castelnau et l'activité Assurances ?
 
Nouveau WRInaute
adripop a dit:
J'ai juste une dernière question, sachant que les espaces de mes villes sont changer en tirer, exemple ( lacanau lac = lacanau-lac ) et que c'est pareil pour les activités, comment faire en sorte que l'url rewriting comprennent bien que castelnau-assurance.htm n'est pas la ville Castelnau Assurance mais la ville Castelnau et l'activité Assurances ?

Vous pouvez remplacer les tirets par une virgule :
RewriteRule ^ville,(^[-a-z]*),(^[-a-z]*)\.htm$ index.php?ville=$1&activite=$2 [L]
 
Nouveau WRInaute
merci de votre aide!

Voilà j'ai mal exposé mon problème. Donc je vais recommencer et l'actualiser.

Voilà les trois états que peut recevoir mon index.php :


* index.php?ville=nom-de-ville
* index.php?activite=nom-de-l-activite
* index.php?ville=nom-de-ville&activite=nom-de-l-activite

A chaque fois les paramètres passés sont écrits en minuscules, ne contiennent pas de chiffre.

L'URL parfaite serait : nom-de-ville-nom-de-l-activite.htm

Si quelqu'un pourrait m'aider à écrire le .htaccess et les regex de celui ci je lui en serai éternelement reconnaissant
[/list]
 
Discussions similaires
Haut