2012-02-15 4 views
0

Я использую файл Htaccess для проекта, который использует следующие правила:Htaccess мод-переписывают конфликт с WordPress

RewriteEngine on 

RewriteRule ^page/([^/\.]+)/?$ page.php?page=$1 [L] 
RewriteRule ^([^/\.]+)/?/([^/\.]+)/?$ page.php?theme=$1&pg=$2 [L] 

RewriteRule ^([^/\.]+)/?$ page.php?theme=$1&pg=$1 [L] 
RewriteRule ^([^/\.]+)/?/$ page.php?theme=$1&pg=$1 [L] 

, который эффективно изменяет domain.com/theme/page к domain.com/page.php?theme=theme&pg=page.

Проблема в том, что я также использую установку wordpress для этого проекта, установленную под domain.com/blog.

поэтому, посещение domain.com/blog переписывается на domain.com/page.php?theme=blog и прерывает установку wordpress.

Есть ли способ, которым я могу установить исключение из правила перезаписи, чтобы domain.com/blog правильно загрузил блог wp?

ответ

0

Try за исключением /blog из обработки следующим

RewriteEngine on 
RewriteBase/

#if its blog, do nothing 
RewriteRule ^blog/ - [L,NC] 

#rest of your rules go here 
+0

это почти работает. добавив, что означает, что 'domain.com/blog' загружает wp, но загружается как' domain.com/blog/? theme = blog & pg = blog', и если я попробую 'domain.com/blog /', он не работает , Это также не работает для подробных страниц в блоге. – TH1981

0

Добавить базу в верхнем

RewriteBase/

И очевидный ответ будет просто добавить RewriteRule ^blog/ - [L] правила после этого, но то, что я не понимаю, о том, что Wordpress обычно создает собственный оптимизированный .htaccess в подкаталоге /blog. Просто из-за того, что правила в вашем файле DOCROOT .htaccess стреляют, говорят, что этого не существует, потому что если бы это было сделано, это было бы выполнено вместо/URI// URI. Вы посмотрели плагин WP htaccess Control?

Смежные вопросы