我在.htaccess中有一个重写规则
RewriteRule (.+?.fid)/ /$1 [L]
与请求URI: /123.fid/myfile.webm
如何强制MIMEtypes:使用.htaccess video/webm包括上面的规则?
允许.htaccess urlredirect的空间
设置Silex Bootstrap时出现Apache错误:无法检查htaccess文件
如何阻止访问者直接访问我网站上的目录?
如何根据查询stringredirecturl?
URL重写在Nginx中不起作用
AddType video/webm .webm
和
<FilesMatch ".webm$"> ForceType video/webm </FilesMatch>
我使用apaches mime_magic模块查找MIMEtypes的.fid文件,但是这不适用于webm文件。 我假设这是RewriteRule这是导致文件types的问题,我需要在请求uri以某种方式寻找webm。
如果我这样做: AddType video/webm .fid正确的MIMEtypes被发送 – 但是这打破了存储在.fid中的任何其他文件格式。 使用.fid是一个devise要求,不能改变。
* 编辑:
我也试过:
RewriteCond %{REQUEST_URI} .webm$ RewriteRule .* - [T=video/webm]
和
RewriteRule .webm$ - [T=video/webm]
结果相同。 提供的MIMEtypes是text/plain 。 这可能是mime_magic模块interfiering?
我也试图添加: DefaultType video/webm哪些作品。 这是目前最接近解决scheme,因为mime_magic模块似乎find正确的MIMEtypes发送,但我不觉得这是一个特别优雅的解决scheme
*编辑2 : AddType video/webm .fid IS工作 – 我怎么能有条件地做的基于请求的URI的AddType?
Apache 2.4“..authentication失败..:密码不匹配”
htaccess规则转发/login/和/login到同一页面?
包括不工作
正确的重写为.net文件的重写path为silex?
.htaccess重写通配符subsubdomain和params
您可以在RewriteRule中使用T标志:
RewriteRule someRegEx$ - [T=video/webm]
http://httpd.apache.org/docs/current/rewrite/flags.html#flag_t
它为我工作,当我将下面的行添加到我的.htaccess文件:
<Ifmodulee mod_rewrite.c> AddType video/ogg .ogv AddType video/webm .webm AddType video/mp4 .mp4 </Ifmodulee>
如果您使用脚本(而不是真实文件)发送数据,则脚本必须发送正确的标题,例如使用PHP(在任何其他输出之前):
header("Content-type: video/webm");
AddType video/webm .fid
编辑:
不幸的是,我不是靠近Apache,但这可能值得一试:
RewriteCond %{REQUEST_URI} .webm$ RewriteRule (.*) $1 [E=is_webm:true] Header set Content-Type video/webm env=is_webm
无法得到这个在Apache中工作,我放弃了,而是转移到Nginx。 我得到它在Nginx中使用:
location ~.webm$ { add_header Content-Type video/webm; rewrite (.+?.fid)/ /$1 break; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。