mod_rewrite ne fonctionne pas avec mes URL

J’essaie de faire des URLs SEO-friendly en utilisant apache mod_rewrite.

Mes URL normales sont quelque chose comme ça –

index.php?p=about index.php?p=contact index.php?p=this 

Je m’attendais à ce que les URL optimisées pour le référencement soient similaires –

 localhost/php_advance/ch02/about localhost/php_advance/ch02/contact localhost/php_advance/ch02/this 

Je l’ai essayé en créant un fichier .htaccess et en apportant quelques modifications à mon fichier Apache httpd.conf .

Ceci est mon fichier .htaccess

  # Turn on the engine: RewriteEngine on # Set the base to this directory: RewriteBase /php_advance/ch02/ # Redirect certain paths to index.php: RewriteRule ^(about|contact|this|that|search)/?$ index.php?p=$1  

Et aussi, à la fin du fichier httpd.conf , j’ai ajouté du code comme celui-ci –

  AllowOverride All  

NOTE: J’utilise le serveur WAMP et Windows 07

Mais ce codage ne fonctionne pas pour moi. J’espère que quelqu’un va m’aider. Je vous remercie.

Assurez-vous que mod_rewrite est activé. Dans votre fichier httpd.conf, vous devriez avoir quelque chose de similaire à:

 LoadModule rewrite_module modules/mod_rewrite.so 

Assurez-vous ensuite que votre fichier htaccess se trouve dans votre /ch02/ .

Essaye ça:

  RewriteEngine On RewriteBase /php_advance/ch02/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /php_advance/ch02/index.php [L]