Files
bun.sh/docs/guides/http/tls.md
2025-07-10 00:10:43 -07:00

870 B

name
name
Configure TLS on an HTTP server

Set the tls key to configure TLS. Both key and cert are required. The key should be the contents of your private key; cert should be the contents of your issued certificate. Use Bun.file() to read the contents.

const server = Bun.serve({
  fetch: request => new Response("Welcome to Bun!"),
  tls: {
    cert: Bun.file("cert.pem"),
    key: Bun.file("key.pem"),
  },
});

By default Bun trusts the default Mozilla-curated list of well-known root CAs. To override this list, pass an array of certificates as ca.

const server = Bun.serve({
  fetch: request => new Response("Welcome to Bun!"),
  tls: {
    cert: Bun.file("cert.pem"),
    key: Bun.file("key.pem"),
    ca: [Bun.file("ca1.pem"), Bun.file("ca2.pem")],
  },
});