Em .htaccess
files ^
corresponde ao início deste subdiretório, então você
não deve usar ^/
em padrões.
Além disso, seu padrão 201[1-9]
não está correspondendo a 2010.
Eu tenho um .htaccess que não está funcionando como eu acho que deveria. Eu tenho um site WP que os proprietários decidiram mover o caminho base para as entradas do blog como / blog /, para que todas as postagens sejam agora 404 de mecanismos de busca. Embora tenha trabalhado nos redirecionamentos para as postagens, as categorias de data como "/ 2015/03" também precisam ser redirecionadas. Eu criei uma regra assim:
RewriteCond %{REQUEST_URI} ^/(200[1-9]|201[1-9])/(0[1-9]|1[0-2])
RewriteRule (.*) http://www.domain.com/blog/$1
que funciona bem no link
www.domain.com/2009/05 deve ir para: www.domain.com/blog/2009/05
Mas está fazendo agachamento no site. Eu tenho uma versão dev do site para mexer com isso, pode testar e mudar sem danificar o site ao vivo. Seção completa do mod_rewrite:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^/(200[1-9]|201[1-9])/(0[1-9]|1[0-2])/
RewriteRule ^(.*) http://www.domain.com/blog/$1
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Alguma pista? Servidor é Ubuntu com Apache2.
Em .htaccess
files ^
corresponde ao início deste subdiretório, então você
não deve usar ^/
em padrões.
Além disso, seu padrão 201[1-9]
não está correspondendo a 2010.