首頁 >運維 >Nginx >nginx中檔案下載指定儲存檔案名稱怎麼配置

nginx中檔案下載指定儲存檔案名稱怎麼配置

PHPz
PHPz轉載
2023-06-02 16:04:061720瀏覽

一般在我們上傳完資源檔案之後,為了避免檔案名稱衝突,會將檔案名稱改成毫無意義的一段字元。這個字符,可能是md5產生的,或是其他方式產生的字串。這時候,下載的時候,預設儲存的檔名會是這段毫無意義的檔名(圖1)。

nginx中檔案下載指定儲存檔案名稱怎麼配置

其實,nginx是支援下載時重新命名的,讓檔案名稱更友善。

nginx中檔案下載指定儲存檔案名稱怎麼配置

nginx也很容易設定:只要加入以下幾行即可:

複製程式碼 程式碼如下:

location ~* . *\.(doc|txt|jar|zip|apk)(\?.*)?$
{
        if ($request_uri ~* ^.*\/(.*)\.(doc|txt jar|zip|apk)(\?n=([^&] ))$) {
            add_header content-disposition "attachment;filename=$arg_n.$2";
>
        expires 30d;
        break;
}

if那一行比較關鍵,這樣配置,保證不傳n參數的時候,就按原名字保存。不會出現空名字。

由於是以header形式指定,cdn會儲存此頭訊息,內容分發時,也會是相同的表現。


以上是nginx中檔案下載指定儲存檔案名稱怎麼配置的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除