Mod-Rewrite

GIF 因 Apache 重寫而失去 mime 類型

  • October 24, 2014

由於我正在做的重寫而失去動畫的 gif 有問題。

RewriteRule ^journal/(.+)\.(jpeg|jpg|png|mp4|webm|ogv)$ app/uploads/journal/$1 [QSA,L]
RewriteRule ^journal/(.+)\.(gif)$ app/uploads/journal/$1 [QSA,L,T=image/gif]

出於某種原因,它仍然與 image/jpeg 標題一起使用。任何想法為什麼?

重寫日誌

問題是,當您添加第二個匹配項時,為了擷取文件名結尾,您忘記了將該匹配項附加到重寫中。第一個括號$1,您要在重寫端添加,但該括號不再包含.gif,.jpg等,因為它們在括號之外。相反,它們最終出現在$2.

所以嘗試將規則重寫為

RewriteRule ^journal/(.+)\.(jpeg|jpg|png|mp4|webm|ogv)$ app/uploads/journal/$1.$2 [QSA,L]
RewriteRule ^journal/(.+)\.(gif)$ app/uploads/journal/$1.$2 [QSA,L,T=image/gif]

引用自:https://serverfault.com/questions/639342