Этот вопрос задан в SO раньше, но предлагаемые решения не работают для меня. How can I remove this directory/folder from url with htaccess rewrite?Используйте .htaccess, чтобы удалить папку каталога из URL
У меня есть многостраничный wordpress install, который я унаследовал, и у него есть один файл .htaccess в корневом каталоге сайта.
мне нужно сделать глобальный редирект на всех URL-адресов, как этот http:thewebsite.com/jol/blog/author/myles/
, чтобы перейти к http:thewebsite.com/jol/author/myles/
До сих пор я попробовал этот код в файле .htaccess:
# BEGIN WordPress
Options +FollowSymLinks
RewriteEngine On
RewriteBase/
RewriteRule ^index\.php$ - [L]
# Remove subdirectory of "blog" from URLs
RewriteCond %{THE_REQUEST} \ /blog/
RewriteRule ^blog/(.*)$ /$1 [L,R=301]
и этот код:
# BEGIN WordPress
Options +FollowSymLinks
RewriteEngine On
RewriteBase/
RewriteRule ^index\.php$ - [L]
RewriteCond %{THE_REQUEST} \ /blog/
RewriteRule ^blog/(.*)$ /$1 [L,R=301]
и, наконец, этот код:
# BEGIN WordPress
Options +FollowSymLinks
RewriteEngine On
RewriteBase/
RewriteRule ^index\.php$ - [L]
RewriteRule ^blog/(.*)$ /$1 [R=301,NC,L]
и абсолютно никто из них не работает вообще. Единственная вещь, которая была успешна до сих пор, нацелена на каждый URL отдельно и выполняет перенаправление, которое ... PAINFUL.
Любая помощь была бы чрезвычайно оценена.
Узор '^ блог /' потерпит неудачу, потому что ваши URL-адреса начинаются с 'Жол /' – hjpotter92
Благодаря! Это имеет такой смысл, когда я смотрю на это сейчас. Как бы тогда я нацелился на следующий дочерний каталог «blog»? –
Попробуйте этот 'RewriteRule^(. * (? = Blog /)) блог /(.*)$ $ 1 $ 2 [NC, L, R = 301]' – hjpotter92