Нечувствительный к регистру резерв / перенаправление
Я использую некоторые изображения по умолчанию, чтобы показать пользователям тип используемого документа.
например, это изображение, чтобы показать, что есть файл.png
в /osr/icons/mime/ папка У меня есть изображения для множества файлов, например avi.png, html.png, jpg.png...
Так что мне просто нужно получить расширение файла для моего текущего документа, например png и отображать /osr/icons/mime/png.png
В случае, если есть формат файла, у которого нет предопределенного изображения, я использую условие перезаписи, чтобы автоматически показывать общее изображение.
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteCond %{REQUEST_URI} /osr/icons/mime/(.*).(gif|jpg|jpeg|png)$
RewriteRule ^(.*) /osr/icons/mime/generic.png
Это хорошо работает, за исключением случаев, когда расширение документа в верхнем регистре, например .PNG вместо .png, В этом случае мой код пытается отобразить /osr/icons/mime/PNG.png который не существует, поэтому показывает общее изображение.
Есть ли способ изменить RewriteCond/Rule для перехода к строчному изображению?
Я нашел Как мне сделать нечувствительный к регистру редирект mod_rewrite на тот же URL (мод кейс)? который рекомендует RewriteMap insensitive tolower: но я точно не знаю, если / как это будет работать для меня. С помощью [NC] тоже не работал
Мне известны следующие обходные пути, которые я на самом деле не хочу использовать:
- Переключение на нечувствительную к регистру обработку файлов для папки
- Дублирование списка элементов всех файлов в папке в верхнем регистре имен (не будет принимать
.Pngв учетную запись) - Переписать код, который загружает файл изображения, чтобы автоматически использовать строчные буквы
