ホームページ  >  記事  >  運用・保守  >  nginxでファイルをダウンロードする際に指定した保存ファイル名を設定する方法

nginxでファイルをダウンロードする際に指定した保存ファイル名を設定する方法

PHPz
PHPz転載
2023-06-02 16:04:061704ブラウズ

通常、リソース ファイルをアップロードした後、ファイル名の競合を避けるために、ファイル名は意味のないピリオドの文字に変更されます。この文字は、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";

有効期限は 30 日;
Break;
}

if 行はより重要であるため、n パラメータが渡されない場合に元の名前で保存されるように設定します。空の名前は表示されません。

ヘッダーフォームに指定されているため、CDNはこのヘッダー情報を保存し、コンテンツ配信時も同様に動作します。


以上がnginxでファイルをダウンロードする際に指定した保存ファイル名を設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。