Я использую apache 2.2, и он обслуживает веб-сайт, часть содержимого которого перемещена в разные каталоги. есть ли способ иметь какое-то правило перезаписи для файла .htacces, если запрошенный файл (не имеет значения, php или jpg или что-то еще) не существует, чтобы добавить имя каталога и повторить попытку?
например:
если URL-адрес запроса - a / b / c.jpg и его не существует,
чтобы попытаться найти его в /old/a/b/c.jpg.
Спасибо!
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !/old/
RewriteRule ^(.*)$ /old/$1 [L,QSA]
Думаю, тоже нужно проверять справочники. И добавьте последний RewriteCond, чтобы избежать рекурсивных перезаписей.
Я думаю, ты справишься с этим -f
(проверьте, существует ли файл). Попробуйте что-нибудь вроде этого (непроверено):
RewriteEngine on
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} ! -f
RewriteRule ^(.*)$ /old/$1 [L,R=301]
Изменить: исправлена опечатка.