Как я могу применить правило с mod_rewrite, только если файл доступен напрямую? (Реферер не обнаружен)
У меня пока что есть, но, похоже, не работает:
RewriteCond %{HTTP_REFERER} !^(.*)
Если вы ищете совпадение с пустой строкой, лучше использовать оператор равенства, чем регулярное выражение . Итак, пока ответ Gumbo будет работать, было бы лучше использовать
RewriteCond %{HTTP_REFERER} !=""
Поскольку .* соответствует чему-либо (даже пустой строке), это условие никогда не будет выполнено. Либо используйте !^(.+), либо просто ^$:
.*
!^(.+)
^$
RewriteCond %{HTTP_REFERER} !^$