Skip to main content

FAQ

General

Does ZyveraWeb work with any Minecraft server?

It works with Spigot/Paper 1.16+, Folia, Velocity 3.3+, and BungeeCord 1.16+. Modded servers (Forge, Fabric) are not supported.

Does it affect Minecraft server performance?

The web server runs on its own thread pool. For typical usage (a few hundred requests per minute), the performance impact is negligible. Heavy traffic or complex Node.js scripts could consume more resources.

Can I host multiple websites?

Yes, using the sites: section in config.yml with virtual hosting. Each domain can serve different content.

Can I use a different port?

Yes, set port to any value between 1 and 65535. Ports below 1024 typically require root/admin privileges.

Technical

How does the JavaScript runtime work?

ZyveraWeb uses GraalVM Polyglot (GraalJS) to run JavaScript inside the JVM. Your server.js files are executed in a sandboxed polyglot context with access to CommonJS require() and npm packages.

Does it require a real Node.js installation?

No. JavaScript runs entirely inside the JVM via GraalJS. The npm package installer is also pure Java.

Can I use ES Modules (import)?

No. GraalJS supports CommonJS (require()) but not ES Modules (import). Use require() for all module imports.

How do I restart the web server without restarting Minecraft?

Use /zyveraweb server restart. This stops and starts the HTTP server without affecting the Minecraft server.

What happens to active connections when I stop the server?

Active requests are allowed to complete normally. New connections are rejected immediately.

Security

Is the web server secure?

ZyveraWeb includes security features:

  • Rate limiting to prevent abuse
  • Path traversal protection for static files
  • HTTPS support with TLS 1.3/1.2
  • CORS headers
  • HTTP-01/DNS-01 validation for Let's Encrypt

Can I restrict access to certain endpoints?

Not directly through config.yml. The PlaceholderAPI endpoint is the only endpoint with access controls. Other endpoints are public.

Does the plugin expose any Minecraft server internals?

The /api/players endpoint exposes only player names. The PlaceholderAPI endpoint only resolves placeholders you explicitly request. No server internals or sensitive data are exposed by default.

Development

How do I update the plugin?

Replace the JAR in plugins/ and restart the server. Your configuration and website files are preserved.

Are there any plans for HTTP/2 support?

Yes, HTTP/2 is on the todo list but not yet implemented. It would require replacing the JDK's built-in HTTP server with a Netty-based implementation.

Can I contribute?

Yes! ZyveraWeb is open source under AGPLv3. The source code is available at github.com/Zyvera-Systems/ZyveraWeb. Pull requests are welcome.

How do I report a bug?

Report issues at the project's issue tracker. Include your server version, Java version, plugin version, and relevant console logs.