У меня есть .htaccess, который не работает, поскольку я думаю, что он должен. У меня есть сайт WP, который владельцы решили переместить основной путь для записей в блоге как / блог/, таким образом, все сообщения 404ing теперь от поисковых систем. В то время как я работал перенаправления на сообщения хорошо, для категорий даты как "/2015/03" также нужно перенаправление. Я создал правило таким образом:
RewriteCond %{REQUEST_URI} ^/(200[1-9]|201[1-9])/(0[1-9]|1[0-2])
RewriteRule (.*) http://www.domain.com/blog/$1
который работает просто великолепно на http://htaccess.madewithlove.be/
www.domain.com/2009/05 должен перейти в: www.domain.com/blog/2009/05
Но это делает приседание на сайте. У меня есть dev версия сайта для бездельничания с, так может протестировать и измениться, не повреждая живой сайт. Полный раздел 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>
Какие-либо подсказки? Сервером является Ubuntu с Apache2.
В .htaccess
файлы ^
соответствует запуску этого подкаталога, таким образом, Вы не должны использовать ^/
в шаблонах.
Кроме того, Ваш шаблон 201[1-9]
не соответствует 2010.