htaccess rewrite url like Stack Overflow

.htaccess, apache, mod-rewrite, php, regex

Solution

You need to tweak your regex a bit by making trailing slash optional. Use this rule:

RewriteRule ^([0-9]+)(?:/([^/]*))?/?$ ./cat.php?id=$1&title=$2 [L,NC]

Problem

Stack Overflow generates rewrite URLs, so i need to know how i can do it like Stack Overflow? ``` http://stackoverflow.com/questions/9168364/how-to-rewrite-seo-friendly-urls-like-stackoverflow => 200 ok.(without trailing slash) http://stackoverflow.com/questions/9168364/how-to-rewrite-seo-friendly-urls-like-stackoverflow/ => 200 ok.(with trailing slash) http://stackoverflow.com/questions/9168364/ => 301 redirect. http://stackoverflow.com/questions/9168364 => 301 redirect. ``` How i can do it with mod_rewrite ? i have something like this: ``` RewriteRule ^([0-9]+)[/]([^/]*) ./cat.php?id=$1&title=$2 [L,NC] mydomain.com/999 => 404 not found. mydomain.com/999/ => 200 ok. mydomain.com/999/test => 200 ok. mydomain.com/999/test/test2 => 200 ok. mydomain.com/999/test/test2/test3 => 200 ok. mydomain.com/999/test/test2/test3/test4 => 200 ok. ``` please let me know how i change RewriteRule ?

Original source

Related problems