server プロパティ
Nuxt では、アプリケーションのサーバー接続用の変数を nuxt.config.js
内に定義できます。
-
型:
Object
基本的な例:
nuxt.config.js
export default {
server: {
port: 8000, // デフォルト: 3000
host: '0.0.0.0', // デフォルト: localhost,
timing: false
}
}
これで Nuxt のサーバーインスタンスの host と port を指定できます。
HTTPS 設定を用いる例
nuxt.config.js
import path from 'path'
import fs from 'fs'
export default {
server: {
https: {
key: fs.readFileSync(path.resolve(__dirname, 'server.key')),
cert: fs.readFileSync(path.resolve(__dirname, 'server.crt'))
}
}
}
サーバーの鍵と証明書を localhost
上で作成する方法については certificates for localhost の記事を参照してください。
sockets 設定を用いる例
nuxt.config.js
export default {
server: {
socket: '/tmp/nuxt.socket'
}
}
timing
-
型:
Object
またはBoolean
-
デフォルト:
false
server.timing
オプションを有効にすると、サーバーサイドレンダリング中に経過した時間を計測するミドルウェアが追加され、'Server-Timing' としてヘッダーに追加されます。
timing 設定用いる例
server.timing
はオプションを提供するためのオブジェクトです。現在、total
のみがサポートされています(これはサーバーサイドレンダリングで費やした全ての時間を直接追跡します)。
nuxt.config.js
export default {
server: {
timing: {
total: true
}
}
}
timing API を使う
timing
API は server.time
が有効な場合にサーバーサイドの response
にも注入されます。
構文
res.timing.start(name, description)
res.timing.end(name)
サーバーミドルウェアで timing を用いる例
export default function (req, res, next) {
res.timing.start('midd', 'Middleware timing description')
// サーバーサイドの処理..
// ...
res.timing.end('midd')
next()
}
そして server-timing
は以下のようにレスポンスヘッダーに含まれます:
Server-Timing: midd;desc="Middleware timing description";dur=2.4
詳細は MDN の Server-Timing を参照してください。
このページをGitHubで編集する
更新日 Wed, Jul 24, 2024
![Sébastien Chopin](/_nuxt/image/e847b9.png)
![Nazaré da Piedade](/_nuxt/image/d5c785.png)
![Nobu](/_nuxt/image/888ba6.png)
![川音리오](/_nuxt/image/345a82.png)
![Maciek Palmowski](/_nuxt/image/2bdab1.png)
![Nestor Vera](/_nuxt/image/b6ef28.png)
![Daniel Roe](/_nuxt/image/0786f3.png)
![Yue Yang](/_nuxt/image/40c994.png)
![Jeronimas](/_nuxt/image/ba9a98.png)
![Clément Ollivier](/_nuxt/image/77339c.png)
![Alexander Lichter](/_nuxt/image/073577.png)
![N3-rd](/_nuxt/image/20bdf5.png)
![Adrien Zaganelli](/_nuxt/image/c3f019.png)
![Mag](/_nuxt/image/1fe278.png)
![Stefan Huber](/_nuxt/image/c3653a.png)
![Olga Bulat](/_nuxt/image/e50af3.png)
![Paiva](/_nuxt/image/ea02f0.png)
![Florian Reuschel](/_nuxt/image/ee31ca.png)
![Savas Vedova](/_nuxt/image/d403a7.png)
![HIJACK](/_nuxt/image/d0b78e.png)
![Vinícius Alves](/_nuxt/image/ba75e5.png)
![Kareem Dabbeet](/_nuxt/image/c79dfa.png)
![Valentín Costa](/_nuxt/image/3dd0d7.png)
![Ryan Skinner](/_nuxt/image/ec2d86.png)
![Alex Hirzel](/_nuxt/image/980fb6.png)
![Ajeet Chaulagain](/_nuxt/image/2fb9d1.png)
![René Eschke](/_nuxt/image/ddfbaa.png)
![Nico Devs](/_nuxt/image/5fa1fe.png)
![Muhammad](/_nuxt/image/76bed9.png)
![Naoki Hamada](/_nuxt/image/475300.png)
![Tom](/_nuxt/image/aae9cc.png)
![Yann Aufray](/_nuxt/image/305a71.png)
![Anthony Chu](/_nuxt/image/027d85.png)
![Nuzhat Minhaz](/_nuxt/image/431077.png)
![Lucas Portet](/_nuxt/image/260cbe.png)
![Richard Schloss](/_nuxt/image/7f63ae.png)
![Bobby](/_nuxt/image/42cdae.png)
![bpy](/_nuxt/image/ecc096.png)
![Antony Konstantinidis](/_nuxt/image/1434b0.png)
![Hibariya](/_nuxt/image/febb5a.png)
![Jose Seabra](/_nuxt/image/ede04e.png)
![Eze](/_nuxt/image/f22c13.png)
![Florian Lefebvre](/_nuxt/image/e3705e.png)
![Lucas Recoaro](/_nuxt/image/8cdc5c.png)
![Julien SEIXAS](/_nuxt/image/40a795.png)