mod_rewrite do que você precisa.
Isso é muito fácil e é uma ferramenta poderosa.
Eu sugiro ler isto - > link
E exemplo:
Isso substitui o rewriteengine, em seguida, aplica algumas condições e, se forem verdadeiras, aplica a reescrita em si. é como um codeblock while / case.
A parte mais útil é o log.;)
RewriteEngine on
RewriteLogLevel 0
RewriteLog "/var/www/rewrite.log"
<Directory /var/www>
Options -ExecCGI -Indexes
AllowOverride none
Order allow,deny
allow from all
#SetHandler none
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(\w+.\w+)/(es|ca|en)/$ index.php?user=$1&lang=$2 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(\w+.\w+)/$ index.php?user=$1&lang= [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(\w+.\w+)/(\w+)?(/(.*))?$ index.php?user=$1&lang=$2$4 [L,QSA]
também, você pode olhar para o mod_proxy, ele vai fazer o truque, mas não é o 'bom caminho' na minha opinião.
espero que ajude.