Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 18 additions & 5 deletions config/server-options.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,23 @@ Vite が応答することを許可するホスト名。
`localhost` と `.localhost` 以下のドメインとすべての IP アドレスはデフォルトで許可されます。
HTTPS を使用する場合は、このチェックはスキップされます。

文字列が `.` で始まる場合、`.` なしのホスト名とそのホスト名配下のすべてのサブドメインを許可します。たとえば、`.example.com` は `example.com`、`foo.example.com`、`foo.bar.example.com` を許可します。
文字列が `.` で始まる場合、`.` なしのホスト名とそのホスト名配下のすべてのサブドメインを許可します。たとえば、`.example.com` は `example.com`、`foo.example.com`、`foo.bar.example.com` を許可します。`true` に設定した場合、サーバーが任意のホストのリクエストに応答することを許可します。

`true` に設定した場合、サーバーが任意のホストのリクエストに応答することを許可します。
DNS リバインディング攻撃に脆弱になってしまうため、この設定は推奨されません。
::: details 安全に追加できるホストは何ですか?

解決先の IP アドレスを制御できるホストは、許可されたホストのリストに追加しても安全です。

例えば、`vite.dev` というドメインを所有している場合は、`vite.dev` と `.vite.dev` をリストに追加できます。そのドメインを所有しておらず、そのドメインの所有者を信頼できない場合は、追加しないでください。

特に、`.com` のようなトップレベルドメインは絶対にリストへ追加しないでください。これは、誰でも `example.com` のようなドメインを購入し、それが解決する IP アドレスを制御できるためです。

:::

::: danger

`server.allowedHosts` を `true` に設定すると、任意のウェブサイトが DNS リバインド攻撃により開発サーバーにリクエストを送信できるようになり、ソースコードやコンテンツをダウンロードできるようになります。許可するホストの明示的なリストを常に使用することをお勧めします。詳細は [GHSA-vg6x-rcgg-rjx6](https://github.com/vitejs/vite/security/advisories/GHSA-vg6x-rcgg-rjx6) を参照してください。

:::

::: details 環境変数による設定
環境変数 `__VITE_ADDITIONAL_SERVER_ALLOWED_HOSTS` を設定することで、許可するホストを追加できます。
Expand Down Expand Up @@ -169,9 +182,9 @@ export default defineConfig({

開発サーバーの CORS を設定します。[オプションオブジェクト](https://github.com/expressjs/cors#configuration-options)を渡して微調整するか、`true` で任意のオリジンを許可します。

:::warning
:::danger

信頼できないオリジンにソースコードを公開するのを避けるため、`true` ではなく特定の値をすることを推奨します
`server.cors` を `true` に設定すると、任意のウェブサイトから開発サーバーにリクエストを送信し、ソースコードやコンテンツをダウンロードできるようになります。許可するオリジンを明示的に常に指定することを推奨します
:::


Expand Down