On suppose que l'on a les deux noms de domaine suivants :
www.monsite.fr
www.monsite.com
et qu'ils pointent sur le même hébergement.

On veut faire en sorte que :
http://www.monsite.com/une/page.html
devienne :
http://www.monsite.fr/une/page.html

On crée alors un fichier .htaccess à la racine du site contenant :
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.monsite.com$
RewriteRule ^(.*) http://www.monsite.fr/$1 [QSA,L,R=301]



[Plus compliqué]

On suppose que dans le répertoire http://www.monsite.fr/rep/ on a déjà un fichier .htaccess qui écrase les règles. La redirection ne fonctionne donc plus à partir de ce répertoire.

Il faut donc modifier ce fichier et insérer la règle suivante avant celles déjà présentes :
RewriteCond %{HTTP_HOST} ^www.monsite.com$
RewriteRule ^(.*) http://www.monsite.fr/rep/$1 [QSA,L,R]


[Encore plus compliqué !!]

Rediriger le .com vers le .fr, et en même temps rajouter le www devant le nom de domaine :
RewriteCond %{HTTP_HOST} ^www.monsite.com$ [OR]
RewriteCond %{HTTP_HOST} ^monsite.com$ [OR]
RewriteCond %{HTTP_HOST} ^monsite.fr$
RewriteRule ^(.*) http://www.monsite.fr/$1 [QSA,L,R]