Mod_rewrite provides a powerful way to do URL manipulations. With it you can nearly do all types of URL manipulations you ever dreamed about. The price you have to pay is to accept complexity, because mod_rewrite's major drawback is that it is not easy to understand and use for the beginner. And even Apache experts sometimes discover new aspects where mod_rewrite can help.
Using a URL rewrite engine, the website address can be presented in one form, while actual requests (and URLs seen by the user) are in another form. So rewrite engines allow URLs to be tidied up and made more user friendly, by configuring rewrite rules, rather than modifying the webserver software.
A URL is easier to use if it is short but descriptive. The URL should have some text describing the content (not just numbers), but should not be too long for search engines.
For more information about mod_rewrite click here.