Skip to content

Runtime SSL certificate hot reload without restart #1289

Description

@fsleo

Feature Request

Currently, SSLApp only accepts key_file_name and cert_file_name during initialization. Once the certificate expires (e.g., Let's Encrypt 90-day certs), the entire Node.js process must be restarted to load the new certificate.

Use Case

  • Using Let's Encrypt with automatic renewal
  • Running WebSocket servers with long-lived connections
  • Need zero-downtime certificate rotation
  • Production environments where process restart is costly

Proposed API

const app = uWS.SSLApp({
  key_file_name: '/path/to/key.pem',
  cert_file_name: '/path/to/cert.pem'
});

// After certbot renews the certificate:
app.updateSSL({
  key_file_name: '/path/to/key.pem',
  cert_file_name: '/path/to/cert.pem'
});

Metadata

Metadata

Assignees

No one assigned

    Labels

    FAQquestionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions