.htaccess に書き換えルールがあります
RewriteRule (.+?\.fid)/ /$1 [L]
次のようなリクエスト URI を使用します。/123.fid/myfile.webm
video/webm
上記のルールを含む.htaccessを使用して、MIMEタイプを強制するにはどうすればよいですか?
成功せずに.htaccessファイルのTOPに追加するために、私がすでに試みたこと:
AddType video/webm .webm
と
<FilesMatch "\.webm$">
ForceType video/webm
</FilesMatch>
apaches 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 モジュールの干渉でしょうか?
私も追加しようとしました:DefaultType video/webm
これは機能します。mime_magic モジュールは送信する正しい MIME タイプを見つけるように見えるため、これは現在のソリューションに最も近いものですが、これが特にエレガントなソリューションであるとは思いません
*Edit2 : AddType video/webm .fid
IS は機能しています - リクエスト URI に基づいて条件付きで AddType を実行するにはどうすればよいですか?