Advanced Search
Search Results
62 total results found
Starting and Stopping
The web server lifecycle can be managed both automatically (plugin startup/shutdown) and manually (in-game commands). Automatic Lifecycle Event Server Action Plugin enable Web server starts automatically after config validation Plugin disable Web serv...
Static File Hosting
The FileHandler serves static files from a configured root directory. This is the most common use case for hosting websites. Configuration A static site is defined in config.yml with the dir: key: sites: - domain: "example.com" dir: "site/main-site" The...
Reverse Proxy
The reverse proxy handler forwards incoming HTTP requests to an upstream server. This is useful for integrating external web applications hosted on the same machine or network. Configuration sites: - domain: "api.example.com" proxy: "http://localhost:300...
Virtual Hosting
The virtual host handler is the router that sits in front of all site-specific handlers. It matches incoming requests to the appropriate handler based on the Host header. Matching Logic Request → Extract Host header | Domain + Port (ho...
HTTP vs HTTPS
ZyveraWeb supports both plain HTTP and encrypted HTTPS. HTTPS is enabled per-site rather than with a global toggle. HTTP Server No encryption overhead Configured with a fixed thread pool Binds to the configured host:port when no site has SSL HTTPS Server En...
Node.js Runtime
Overview
ZyveraWeb can run server-side JavaScript directly inside the JVM using GraalVM Polyglot (GraalJS). No external Node.js binary is required. How It Works The plugin creates a JavaScript runtime for each Node.js project. JavaScript files are evaluated within this...
Project Structure
A Node.js project in ZyveraWeb follows a specific directory layout. Directory Layout plugins/ZyveraWeb/site/<project-name>/ ├── server.js # Backend handler (JavaScript) ├── public/ # Static frontend files │ ├── index.html │ ├── style....
server.js API
The server.js file is the backend entry point for a Node.js project. It must define a global handleRequest function. The request Object The function receives a request object with these properties: Property Type Description request.method string HTTP me...
NPM Packages
ZyveraWeb includes a pure-JVM npm client that can download and install npm packages without requiring Node.js or shell access. How Package Installation Works The plugin reads package.json from each Node.js project. It fetches package metadata from https://reg...
React and SSR
ZyveraWeb supports React applications in two modes: 1. Single Page Application (SPA) Build your React app with Vite, Create React App, or any bundler, and place the output in public/. Project structure: plugins/ZyveraWeb/site/react-app/ ├── public/ │ ├── ind...
Example Projects
ZyveraWeb creates two example Node.js projects on first run to help you get started. Demo Project Location: plugins/ZyveraWeb/site/demo/ A simple API backend with a vanilla JavaScript frontend. Frontend (public/) A basic HTML page with buttons to call the API ...
SSL ACME
Automatic SSL
ZyveraWeb includes a built-in ACME v2 client that can obtain free SSL certificates from Let's Encrypt automatically. Overview The ACME (Automatic Certificate Management Environment) protocol allows automatic certificate issuance and renewal. ZyveraWeb supports...
HTTP Challenge
The HTTP-01 challenge is the simplest way to validate domain ownership. Let's Encrypt makes an HTTP request to http://<your-domain>/.well-known/acme-challenge/<token> and checks for a specific response. Requirements The web server must be accessible on port 8...
DNS Challenge
The DNS-01 challenge validates domain ownership by requiring you to add a specific DNS TXT record. This method works even if your server is not publicly accessible on port 80. When to Use DNS-01 Your server is behind a NAT or firewall Port 80 is already in us...
Manual SSL
If you prefer not to use Let's Encrypt, or if you have an existing certificate, you can configure SSL manually. Step 1: Obtain a Certificate You can use: A certificate from a commercial CA (DigiCert, Sectigo, etc.) A self-signed certificate (for testing only)...