Мой блог Wordpress установлен на domain.com/blog
, и у меня есть страница с подстраницами, структура которых выглядит как domain.com/blog/page
и domain.com/blog/page/subpage
.Перепишите URL-адрес за пределами базы Wordpress
Я хочу, чтобы мои посетители имели возможность перейти на domain.com/subpage
и просмотреть содержимое domain.com/blog/page/subpage
, не перенаправляясь на этот URL извне, избегая перезаписывания permalink wordpress.
Я попытался с помощью RewriteRule ^subpage$ /page/subpage [L]
и содержимое обслуживается, но URL выглядит domain.com/blog/page/subpage
.htaccess (я предполагаю, что Wordpress Permalinks получают к нему.):
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
// tried inserting my code here.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
EDIT:
Эти журналы показывают активность на странице визита -
ip - - [19/Jun/2012:14:03:53 -0400] "GET /subpage/ HTTP/1.1" 301 - "http://domain.com/referrer/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:13.0) Gecko/20100101 Firefox/13.0.1"
ip - - [19/Jun/2012:14:03:53 -0400] "GET /blog/page/subpage/ HTTP/1.1" 200 20022 "http://domain.com/referrer/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:13.0) Gecko/20100101 Firefox/13.0.1"
Кроме того, здесь мой корень .htaccess -
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^subpage/?$ /blog/page/subpage/ [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
RewriteCond %{HTTP_HOST} ^domain.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.domain.com$
Попробуйте вставить свой код * перед * the RewriteBase/blog/' –
та же проблема - содержимое загружается, но url по-прежнему'/blog/page/subpage/' –
Из любопытства, что произойдет, если вы измените регулярное выражение вашего правила to: '^ subpage/$'? –