Подскажите, как правильно сформировать правило для редиректа через .htaccess

Нужно все запросы, которые выглядят как:

домен/wp-content/cache/all/что-угодно/index.html

перенаправлять на:

домен/что-угодно/

То есть нужно срезать после домена /wp-content/cache/all/ и в конце index.html

Добавил такое

RewriteRule ^wp-content/cache/all/(.*)$ //$1 [L,R=301]

Не понимаю, как при этом добавить еще удаление index.html


Ответы (1 шт):

Автор решения: teran

обычный поиск .* называется "жадным": в это выражение попадет все до конца строки (максимально возможно по длине совпадение). Но поскольку нам требуется наличие еще и index.html в конце, то это нужно просто дописать к шаблону. При этом алгоритм лучше сменить на нежадный (минимальное совпадение), обеспечивается это добавлением знака вопроса после звездочки - .*?, таким образом искомое выражение будет иметь вид:

 RewriteRule ^wp-content/cache/all/(.*?)/index\.html$ /$1 [L,R=301]
→ Ссылка