Skip to content

An Rsbuild plugin to generate an untrusted, self-signed certificate for the HTTPS server.

License

Notifications You must be signed in to change notification settings

rspack-contrib/rsbuild-plugin-basic-ssl

Repository files navigation

@rsbuild/plugin-basic-ssl

Generate an untrusted, self-signed certificate for the HTTPS server.

The Basic SSL plugin will automatically generate a self-signed certificate and set the server.https option. When you visit the page, your browser will indicate that the certificate is not trusted. You can access the HTTPS page after manually confirming this.

npm version license

Usage

Install:

npm add @rsbuild/plugin-basic-ssl -D

Add plugin to your rsbuild.config.ts:

// rsbuild.config.ts
import { pluginBasicSsl } from "@rsbuild/plugin-basic-ssl";

export default {
  plugins: [pluginBasicSsl()],
};

Then visit the https URL of the page, and confirm in your browser.

Options

filename

Filename of the generated certificate.

  • Type: string
  • Default: 'fake-cert.pem'
  • Example:
pluginBasicSsl({
  filename: "foo.pem",
});

outputPath

Output path of the generated certificate.

  • Type: string
  • Default: __dirname
  • Example:
import path from "node:path";

pluginBasicSsl({
  outputPath: path.join(__dirname, "node_modules/.cache/cert"),
});

selfsignedAttrs

Attributes passing to selfsigned, see selfsigned for details.

  • Type: CertificateField[]
  • Default:
const defaultAttrs = [{ name: "commonName", value: "localhost" }];
  • Example:
pluginBasicSsl({
  selfsignedAttrs: [{ name: "commonName", value: "example.com" }],
});

selfsignedOptions

Options passing to selfsigned, see selfsigned - Options for details.

  • Type: SelfsignedOptions
  • Default:
const defaultOptions = {
  days: 30,
  keySize: 2048,
};
  • Example:
pluginBasicSsl({
  selfsignedOptions: {
    days: 100,
  },
});

License

MIT.