我在.htaccess强制视频/ WEBM MIME类型基于请求URI
RewriteRule (.+?\.fid)/ /$1 [L]
重写规则与请求的URI,如:/123.fid/myfile.webm
我如何可以强制MIME类型来:video/webm
使用.htaccess包括上面的规则?
我已经尝试,对.htaccess文件的顶部添加没有成功:
AddType video/webm .webm
和
<FilesMatch "\.webm$">
ForceType video/webm
</FilesMatch>
我用阿帕奇mime_magic模块查找.fid的MIME类型文件,但这不适用于webm文件。我假设它是导致文件类型问题的RewriteRule,并且我需要以某种方式在请求uri中查找webm。
如果我这样做:AddType video/webm .fid
正确的MIME类型被发送 - 但这打破了存储在.fid中的任何其他文件格式。使用.fid是设计要求,不能更改。
* 编辑:
我也尝试:
RewriteCond %{REQUEST_URI} \.webm$
RewriteRule .* - [T=video/webm]
和
RewriteRule \.webm$ - [T=video/webm]
具有相同的结果。供应的MIME类型是text/plain
。这可能是mime_magic模块interfiering?
我也试图添加:DefaultType video/webm
哪个有效。这是最接近的解决方案目前,作为mime_magic模块似乎找到了正确的MIME类型来发送,但我不觉得这是一个特别优雅的解决方案
* EDIT2:AddType video/webm .fid
是工作 - 如何我可以根据请求uri有条件地执行AddType吗?
你服务真正的文件或虚拟的网址? – vbence 2011-05-29 17:09:46
.fid文件是真实的文件,当我重写URL包含myfile.webm – 2011-05-29 17:11:51