g1smd - 12:20 pm on Jan 21, 2013 (gmt 0)
htaccess cannot "make" nor "change" URLs.
To "change" or "make" a URL, you link to
href="/pagename" from the pages of your site, where "
/pagename" is the URL that you want users to "see" in their browser status bar when they hover over the link and "see" in the browser address bar after the link has been clicked.
Once that link has been clicked, the htaccess rules are used to match the requested URL and the rule that matches simply modifies Apache's internal file pointer to point at where in the server filesystem the content really resides.
You can map any URL request to any internal location in the server filesystem. It's all in the way the rules are crafted.
It's important to realise that htaccess does not make URLs for content, it instead finds the content inside the server based on the URL that was requested, and that in turn relies solely on what you put in the "href" of the link that was clicked on.
There are some default "rewrite" actions aleady built in. You request "/" and the server tries to look in "/index.html" or "/index.php" to fulfil the request. Likewise for folders. You can add whatever extra rewrites you need.
If a site is already live and URLs are indexed, then once the rewrite is working, you also need more rules to redirect requests such that when an old URL is requested, the browser is told to make a new request for the new URL.
RewriteRule can be configured as an internal rewrite or as an external redirect. You'll need both to complete this job.
Parallel conversation: [webmasterworld.com...]