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]