Дизайн проекта немного неправильный - другие уже отмечали, что он не масштабируемый - как вы можете кэшировать запрос в / abc / foo / 10, если файл / abc / foo уже существует?
Ответом на это и Вашей проблемой является использование подпапок вместо файлов.
Таким образом, вместо структуры кэша:
/abc/foo
/abc/bar
...?
использование:
/abc/index.html
/abc/foo/index.html
/abc/bar/index.html
/abc/foo/10/index.html
и каждый раз создайте новый каталог с index.html
На этот раз Apache обнаружит, что в папке / abc / foo нет файла / abc / foo / 10, поэтому RewriteCond будет применяться.
редактировать
Вы также можете попробовать другой способ - изменить URL с помощью mod_rewrite, изменив URL:
/abc/foo
/abc/bar
/abc/foo/10
что-то вроде:
/cache/abc~foo
/cache/abc~bar
/cache/abc~foo~10
Правила доступа (примерно):
# redirecting to cache folder and removing last '/'
RewriteCond %{REQUEST_URI} ^/(abc|cde)
RewriteRule ^(.*?)/?$ /cache/$1 [L]
# recursive replacing '/' with '~'
RewriteCond %{REQUEST_URI} ^/cache/.*/
RewriteRule cache/(.*)/(.*)$ /cache/$1~$2 [L]
Ваши стандартные правила htaccess должны соответствовать