RewriteRule ^(.*)$ http://www.mysite.com/$1 [R=301,L]
RewriteRules tem três partes. Um padrão para combinar, a substituição e as bandeiras. O padrão nesse caso é ^(.*)$ . O ^ representa o início da linha e o $ representa o final da linha. O . representa qualquer caractere e o * a seguir significa que ele pode ocorrer qualquer número de vezes. Agora, os parênteses redondos definem um grupo de captura, que basicamente armazena tudo o que ocorre entre os parênteses. Esses grupos de captura estão disponíveis para você usar na substituição. Portanto, se a solicitação for /subdir/something.php , o primeiro grupo de captura conterá "/subdir/something.php".
A substituição nesse caso é http://www.mysite.com/$1 e o $1 representa o primeiro grupo de captura no padrão correspondente. O URL de destino é formado pelo preenchimento desses grupos de captura, que nesse caso produzirão http://www.mysite.com/subdir/something.php .
Portanto, se você quiser sempre enviar os usuários para a raiz de www.mysite.com , independentemente do caminho que eles solicitaram, basta preencher o caminho na substituição, ou seja, removendo a parte $1 . Sua regra final ficará assim:
RewriteRule ^(.*)$ http://www.mysite.com/ [R=301,L]