Access our test server at: 👉 https://114.55.90.171:8443
- 🔒 Auto HTTPS - Self-signed certificate generation
- 🎵 Smart Audio Mode - Auto-switch between Worklet/ScriptProcessor
- 📊 Performance Monitoring - Real-time console metrics
- 🛠️ Developer Tools - Debug mode detection
- 🌐 Cross-Origin Isolation - Full WebAssembly support
- ⚡ Zero Configuration - Works with Godot 3.5+/4.x web exports
- Rust 1.70+ (
rustup install stable) - Godot 3.5+ or 4.x with Web export
# Clone and run
git clone https://github.com/cfping/godot_https_server.git
cd godot-web-server
cargo run --releaseAccess your game at: 👉 https://localhost:8443
| Parameter | Description | Default |
|---|---|---|
?audio=worklet |
Force AudioWorklet mode | Auto |
?audio=legacy |
Force ScriptProcessor mode | Auto |
#debug |
Enable performance logging | Off |
godot --export-release "Web" /path/to/exportcp -r /path/to/export/* godot-web-server/# Build release
cargo build --release
# Start server (port 443)
sudo ./target/release/godot-web-serverReplace auto-generated certs:
# Let's Encrypt example
cp /etc/letsencrypt/live/yourdomain.com/{cert.pem,key.pem} .FROM rust:1.70 as builder
WORKDIR /app
COPY . .
RUN cargo build --release
FROM debian:bullseye-slim
COPY --from=builder /app/target/release/godot-web-server /usr/local/bin/
COPY ./export /var/www
CMD ["godot-web-server"]Add to your HTML:
<!--DEVMODE-->Enables:
- Live reload
- Detailed console logs
- Cache bypass
| URL | Purpose |
|---|---|
https://localhost:8443 |
Auto-detect |
https://localhost:8443?audio=worklet#debug |
Debug Worklet |
https://localhost:8443?audio=legacy |
Force legacy |
-
Mixed Content Errors Ensure all resources use
https:// -
iOS Audio Issues Add to your Godot project:
# In autoload script func _ready(): OS.set_environment("WEB_AUDIO_CONTEXT", "worklet" if OS.has_feature("web") else "")
-
Certificate Warnings For development, trust the cert manually:
# Linux systems sudo cp cert.pem /usr/local/share/ca-certificates/godot-dev.crt sudo update-ca-certificates
MIT License - See LICENSE
Try these test cases on our demo server:
-
Basic Functionality
- Verify HTTPS connection
- Check cross-origin isolation
- Monitor audio mode selection in console
-
Performance Test
console.time('Godot Load'); window.addEventListener('godot-loaded', () => { console.timeEnd('Godot Load'); console.log('Memory usage:', performance.memory); });
-
Audio Mode Tests
-
Debug Mode Append
#debugto URL for detailed logs Report issues with: -
Browser version
-
Console errors
-
Network timing screenshots
-
Reproduction steps
Note: Demo server uses self-signed certs - accept the security warning when testing.