.htaccess RedirectMatch исключить index.html - PullRequest
2 голосов
/ 22 мая 2019

У меня в .htaccess перенаправление, которое должно преобразовать URL с .html в без расширения, которое прекрасно работает.

RedirectMatch 301  ^/([^/]+)/([^/]+)\.html$ /$1/$2/

Я хочу исключить из правила, если имя файла называется index.html, как мне это сделать?

То, что я пробовал, было

RedirectMatch 301  ^/([^/]+)/(?!index|[^/]+)\.html$ /$1/$2/

Но теперь он вообще не работает.

1 Ответ

1 голос
/ 22 мая 2019

Вы можете использовать это регулярное выражение в своем правиле:

RedirectMatch 301 ^/([^/]+)/(?!index)([^/]+)\.html$ /$1/$2/

Ваши попытки негативного взгляда не верны из-за выражения |.

...