2009-11-09 9 views

Répondre

0

Vous pouvez créer une règle comme ceci:

RewriteRule ^security-services/(.*)/? /security-services.php?service=$1 

Si vous utilisez un fichier .conf, changer ^ à ^/

4

Un fichier .htaccess avec quelque chose comme ça devrait le faire.

Options +FollowSymLinks 
RewriteEngine On 

RewriteRule security-services/(.*)/? security-services.php?service=$1 [L] 

La partie qui dit security-services/(.*)/? correspond à l'URL dans le navigateur et réécrit à security-services.php.

La partie clé est le (.*) qui capture cette partie de l'URL et la transmet au script PHP en tant que valeur GET.

+0

Merci pour la réponse! J'ai fait ce que vous avez suggéré et la page se charge bien. Le seul problème auquel je suis confronté est la capture de la variable 'service'. Disons que je veux le tester, sur l'exemple original que j'ai: http://example.com/security-services.php?service=fixed-camera-surveillance et pourrait tester avec "echo $ _REQUEST [ 'service'] " nouvel exemple, http://example.com/security-services/fixed-camera-surveillance Je veux" caméra-surveillance fixe » à echo'd. Suggestions –

+0

? Avez-vous essayé le code ci-dessus, il prend tout ce qu'il trouve avec le '(. *)' Regex et le dumps où vous voyez le '$ 1', donc votre script dans le fichier' security-services.php'. – MalphasWats

+0

Oui, je l'ai essayé, je veux capturer 'surveillance par caméra fixe' depuis l'URL '.../security-services/fixed-camera-sur veillance ». Est-ce que je demanderais ['service'] comme avant, ou est-ce que c'est simplement stocké dans $ 1? –

1

Essayez cette règle:

RewriteEngine on 
RewriteRule ^security-services/([^/]+)$ security-services.php?service=$1 [L] 

Le [^/]+ décrit le prochain segment de chemin après /security-services, (…) forme un groupe qui est correspondance peut alors référencé avec $1 la substitution.

Et si vous voulez un plus général pour tout type de fichier …-service.php:

RewriteEngine on 
RewriteRule ^([^/-]+)-services/([^/]+)$ $1-services.php?service=$2 [L] 
+0

Merci pour la réponse! J'ai fait ce que vous avez suggéré et la page se charge bien. Le seul problème auquel je suis confronté est la capture de la variable 'service'. Disons que je veux le tester, sur l'exemple original que j'ai: http://example.com/security-services.php?service=fixed-camera-surveillance et pourrait tester avec "echo $ _REQUEST [ 'service'] " nouvel exemple, http://example.com/security-services/fixed-camera-surveillance Je veux" caméra-surveillance fixe » à echo'd. Suggestions –

+0

? @Mike B .: Cela devrait fonctionner de la même manière, vous ne devriez pas remarquer de différence. – Gumbo