如何用 .htaccess 把一整個目錄內的檔案都增加 header

這幾天客戶 pupupepe.com 浿機老闆回報一個問題

pupupepe 跟 LINE 合作

LINE 會來爬 pupupepe 的文章

但是呢

首圖是正常的

內文的圖全部都爛掉

原因不明

但跟 LINE 的工程師溝通後

發現一個問題

就是首圖有附檔名 .jpeg

但內文的圖沒有

這有一些系統的原因

總之內文的圖就是沒有 .jpeg 的檔名

所以導致 apache 在吐圖給爬蟲的時候

沒有給 content type

然後 爬蟲 很規矩的 因為沒拿到 content type (jpeg)

所以認為他拿到的東西有問題

就爛了

從瀏覽器看不出這個問題

因為瀏覽器比較 “聰明”

會猜內容

然後自己補完

一開始還懷疑到網速之類的原因

但明明瀏覽器開網站/圖片出來都很快啊

好了重點來了

怎麼補這個問題呢?

最直接的方法是改檔名

但如果圖片檔名改了

文章內部的圖片連結也要改

因為太多了

茲事體大 怕會有問題

所以用另一個方法

在 .htaccess 裡面直接加敘述

把某個資料夾裡面的檔案都加入 Content-Type “image/jpeg”

因為圖片的路徑都是一樣的

所以這個方法是可行的

很簡單

只要在圖片的目錄裡面

增加一個 .htaccess

然後寫一行

Header set Content-Type “image/jpeg”

就搞定了

用測試服務測試後的結果

apache 確實增加了 image/jpeg 的 content type

結案~

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料