Question

Je voudrais utiliser l'URL suivante RESTful pour un site web je travaille.

http://mysite.com/Products/category=bags&colours=black

quelqu'un peut s'il vous plaît me dire comment y parvenir avec .htaccess?

Oscar

Était-ce utile?

La solution

Voici un .htaccess à quoi que ce soit de capture, sauf lorsque des fichiers ou des répertoires conflit et il achemine à /index.php:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

que nous pouvons utiliser index.php comme notre routeur demande. En PHP, nous obtenons simplement quelque chose de demande comme ceci:

<?php
$url_path = $_SERVER['REQUEST_URI'];
// Parse your URL path here...

Cela dit, votre modèle d'URL est non standard et je le recommande vraiment contre parce que les procurations et les navigateurs URL encoder l'esperluette et le signe égal. Permettez-moi de suggérer une des options suivantes au lieu (et aussi en minuscules d'utilisation car il aide à la validation de l'URL):

http://example.com/products/categories/bags/colours/black
http://example.com/products/category_bags/colours_black
http://example.com/products?category=bags&colours=black
http://example.com/products/categories/bags?colours=black
http://example.com/products/bags?colours=black

Pour voir ce qui va encoder dans le chemin d'une URL juste Google et consultez l'URL de recherche Google.

Hope this helps.

-Mike

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top