静的アセット
Next.jsは、ルートディレクトリのpublic
という名前のフォルダ内に、画像などの静的ファイルを提供できます。public
内のファイルは、ベースURL(/
)から始まるコードで参照できます。
例えば、public/avatars/me.png
ファイルは、/avatars/me.png
パスにアクセスすることで表示できます。その画像を表示するコードは次のようになります:
キャッシング
Next.jsは、public
フォルダのアセットが変更される可能性があるため、安全にキャッシュできません。適用されるデフォルトのキャッシュヘッダーは:
Robots、ファビコン、その他
このフォルダは、robots.txt
、favicon.ico
、Google サイト検証、その他の静的ファイル(.html
を含む)にも便利です。ただし、pages/
ディレクトリ内のファイルと同じ名前の静的ファイルがないことを確認してください。これにより、エラーが発生する可能性があります。詳細を読む。
補足:
- ディレクトリ名は
public
でなければなりません。名前は変更できず、静的アセットを提供するディレクトリはこれのみです。- ビルド時に
public
ディレクトリにあるアセットのみが、Next.jsによって提供されます。リクエスト時に追加されたファイルは利用できません。永続的なファイル保存には、Vercel Blobのようなサードパーティサービスの使用をお勧めします。