Eu quero reescrever todos os arquivos .mp3 para um arquivo php. E eu não quero passar no caminho
link
link
não deve fazer diferença.
Eu inventei:
RewriteRule ^(.*)\.mp3$ /files/read/?file=$1.mp3 [QSA]
O que estou perdendo? talvez algum regexp antes do (. *) mas por que ele não pega o padrão mp3 e redireciona para /files/read/?file=feb.mp3?
Isso nem parece pegar os arquivos mp3:
applying pattern '^(.*)\.mp3$' to uri 'feb.mp3'
Não pára por aí, passa pela outra condição e cai em:
applying pattern '^.*$' to uri 'feb.mp3'
pass through /htdocs/project/project-web/feb.mp3
Muito obrigado se isso puder ser resolvido.
este é o meu completo .htaccess
Desenvolvimento de SetEnv APPLICATION_ENV
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*)\.mp3$ files/read/?file=$1.mp3 [QSA]
RewriteRule ^.*$ index.php [NC,L]
Isso parece funcionar, no entanto, ele redireciona isso.
RewriteRule ^(.+).mp3$ http://education.localhost/files/read/?file=$1.mp3 [NC,L]
Pode ser algo que quando essa regra de regravação se aplica, isso não acontece:
RewriteRule ^.*$ index.php [NC,L]
Então, arquivos / read /? file = $ 1.mp3 isso depende dessa função para index.php, alguma maneira de fazer isso funcionar?