Jalankan website dalam bahasa apa pun

Biru adalah web server multi-engine berkinerja tinggi. Tulis file PHP, Python, C, Go, atau 48+ runtime lainnya. Taruh di folder webroot Biru mengkompilasi / menginterpretasikannya dan merendernya jadi halaman HTML. Tanpa daemon build, tanpa config ekstra

$ bash <(curl -sL biru.okane.id)

Jalan di Linux, BSD, Solaris, macOS, dan Android (Termux).

48+
Runtime terdeteksi otomatis
18
Versi PHP dalam satu server
±22 MB
Satu binary statis
4
Protokol: HTTP, HTTP/2, HTTP/3, HTTPS
Cara kerja

Tiga langkah. Tanpa alat build. Tanpa config.

Web server lain butuh compiler, proses build, config panjang, dan butuh wrapper seperti CGI atau penghubung lain. Biru tidak.

1

Tulis kode

Buat file apa saja: index.php, index.py, index.c, index.go, bahkan index.asm.

2

Taruh di webroot

Letakkan file di webroot. Itu saja. Tidak ada perintah lain, tidak ada service.

3

Buka di browser

Biru deteksi bahasanya, render, lalu tampilkan jadi halaman. Selesai.

Fitur

Semua yang dibutuhkan web server, sudah ada di dalam

Tidak ada modul berbayar, tidak ada plugin terpisah. Semua aktif lewat config JSON.

48+ runtime

Biru memakai compiler atau interpreter yang sudah terpasang di server.

  • Terkompilasi: C, C++, Rust, Go, Java, Zig, Kotlin, Scala
  • Script: PHP, Python, Perl, Ruby, Node, Lua, R, Julia
  • Plus Assembly, WASM, Dart, Hermes, jar, J, banyak shell

Multi versi PHP

PHP 4.3 sampai 9.0 dalam satu server. Tiap situs pilih versinya sendiri.

  • Pilih versi per situs
  • Mode FastCGI atau worker
  • Opcache tetap panas antar request

Kompatibel .htaccess

Biru paham direktif ala Apache. Situs lama sering tinggal di-copy.

  • RewriteRule: [P] [R] [F,L] [QSA]
  • Redirect, ErrorDocument, Options
  • Auth Basic, ACL, Header/Expires

Mesin aplikasi

Jalankan aplikasi sungguhan, bukan cuma script.

  • Node.js: mode script + mode app
  • Go native, CGI, proxy JSP
  • File statis, autoindex, SSI

Proxy semua

Arahkan Biru ke service lain, lalu dia teruskan request.

  • Reverse proxy HTTP
  • Tunnel WebSocket
  • Proxy TCP dan UDP raw

Keamanan bawaan

Perlindungan langsung jalan dengan default yang masuk akal.

  • WAF: SQLi, XSS, RCE, LFI
  • Auto blacklist untuk penyerang
  • Blokir negara, rate limit, guard SSRF

Cepat

Dibuat untuk situs sibuk, bahkan di VPS RAM 512 MB. Terukur: ±14 MB RAM & <1% CPU saat idle (binary ±30 MB).

  • Cache respons dinamis, HIT WordPress setara OpenLiteSpeed + LSCache, MISS unggul 7%
  • Kompresi: brotli, zstd, gzip, deflate
  • HTTP/3 (QUIC)

Ubah tanpa downtime

Ubah config situs, terapkan tanpa henti server.

  • Reload dengan satu perintah
  • Koneksi tidak terputus
  • SSL gratis: Let's Encrypt / ZeroSSL

Banyak situs

Bebas jumlah situs dalam satu server, tiap situs terisolasi.

  • Exact, alias, wildcard *.domain
  • Isolasi user + chroot per situs
  • Dual-stack IPv4/IPv6, mode NAT-only
Yang membuat Biru beda

Keamanan dan runtime yang dijaga

Dua kemampuan yang paling sering dicari, WAF dan worker persistent, sudah bawaan, bukan add-on.

01 WAF · Web Application Firewall

Menghentikan serangan sebelum masuk

Biru memakai anomaly scoring: setiap request dicocokkan dengan 30 aturan built-in. Skor menumpuk, request dengan skor tinggi diblokir. Severity 5 selalu diblokir.

  • 7 kategori: SQLi, XSS, RCE, LFI, traversal, protocol, bot
  • Mode detect (log saja) → block (403)
  • Override per kategori: "sqli": "block", "bots": "block"
  • Langsung jalan di semua request, tanpa service terpisah
02 Persistent runtime

Interpreter hidup, bukan spawn tiap request

PHP, Python, Perl, Ruby, Node.js, dan shell dijalankan lewat worker persistent. Proses interpreter tetap hidup, opcache tetap panas, tanpa spawn per request.

  • PHP worker: "php_mode": "worker", opcache panas
  • Runtime worker: .py .pl .rb .sh dan lainnya
  • Node.js: .js .mjs .cjs statis secara default, aktif runtime lewat "nodejs": true
  • Pool per user+runtime, recycle otomatis
  • Cap RLIMIT per worker + cgroup cell, satu bocor, tidak merusak host
Bahasa

Menjalankan dan melakukan render ke dalam HTML dari berbagai bahasa pemrograman apa pun yang tersedia di server

Biru memakai compiler atau interpreter di mesin kamu. Tidak perlu download atau konfigurasi apapun lagi.

.php .phtmlPHP 4.3 – 9.0
.pyPython 2.7, 3.9–3.14
.pl .pmPerl 5.36–5.40
.rbRuby
.js .mjs .cjsNode.js · statis default
.ts .tsx .jsxTypeScript / JSX
.sh .bashShell
.zsh .ksh .mkshzsh · Korn · mksh
.csh .tcshC shell · tcsh
.fishfish shell
.dash .ashdash · ash (BusyBox)
.dartDart VM
.hermesHermes JS engine
.jarJava Archive (java -jar)
.luaLua
.tclTcl
.rR
.awkawk
.ex .exsElixir
.jlJulia
.rakuRaku
.rktRacket
.scmScheme
.lisp .clLisp
.cfm .cfmlColdFusion
.cC · gcc/clang
.cpp .cc .cxxC++ · g++/clang++
.rsRust · rustc
.zigZig
.goGo 1.20–1.26
.javaJDK 8/11/17/21/25
.ktKotlin
.scalaScala
.groovyGroovy
.csC# · Mono
.fs .fsxF#
.f .f90Fortran
.dD · ldc2/gdc
.cob .cblCOBOL
.pas .ppPascal
.hsHaskell
.nimNim
.crCrystal
.odinOdin
.vVala
.wasmWebAssembly
.bfBrainfuck
.ijsJ
.asm .sAssembly · NASM/YASM/GAS
.jsp .jspxJavaServer Pages
.aspx .ashxASP.NET · Mono
.aspClassic ASP · Mono

...dan masih banyak lagi. Bahasa baru cukup dengan menginstall compiler-nya di server.

Modul & plugin

Diaktifkan lewat config, bukan binary terpisah

Semua di bawah aktif lewat config JSON, global atau per situs, plus plugin WebAssembly.

WAF · 30+ aturan bawaan
Auto blacklist penyerang
Blokir negara · 251 negara
Rate limit per IP
Reverse proxy + WebSocket
Proxy TCP / UDP raw
Cache respons dinamis
.htaccess (kompatibel Apache)
Auth Basic + ACL + .htpasswd
Plugin WASM sandbox
Worker persistent + cgroup
SSL otomatis via ACME
Plugin WebAssembly: file *.wasm di-load dari plugins_dir dan dijalankan sandbox di dalam proses. Setiap request bisa pass, respond, deny, atau redirect. Plugin yang error atau lemot dilewati dan di-log, tidak pernah merusak situs.
Worker persistent

Proses interpreter yang tetap hidup

Biru tidak menjalankan interpreter setiap request. Ia memelihara worker yang hidup lama per user dan runtime. Opcache tetap panas, PHP dan script lain jadi lebih cepat.

Worker PHP

Atur "php_mode": "worker". Worker di-spawn per user|versi|worker, request dikirim lewat pipe, opcache tetap panas.

Worker memakai SAPI cli → php://input kosong (body tetap diparse jadi $_POST/$_FILES; aplikasi yang baca body mentah seperti WP REST/webhook JSON perlu mode FastCGI). Cookie/session tetap jalan lewat biru_sync_session_cookie() di worker.php.

FastCGI & parity $_REQUEST

"php_mode": "fastcgi" (default) memakai SAPI cgi-fcgi → php://input jalan penuh (WP REST, Laravel, Symfony, webhook). Config php_cgi_define menambah argumen -d ke tiap php-cgi; default request_order=GPCS & variables_order=GPCS supaya $_REQUEST + cookie parity dengan mode worker.

Worker runtime

Atur "runtime_worker": true. Script .py, .pl, .rb, .sh dijalankan interpreter persistent dari PATH host atau toolchain bawaan.

Node.js runtime

Mode 1 — skrip: aktifkan "nodejs": true (global/per-situs); .js/.mjs/.cjs dieksekusi per-request ala CGI. Mode 2 — aplikasi: blok "node" (atau biru app nodejs <domain>) menjalankan worker persistent yang mendengarkan PORT/HOST, semua request di-proxy ke sana, restart otomatis saat kode berubah (watcher full-docroot, ala pm2).

Batas resource

Tiap worker di-cap RLIMIT_* (CPU, RAM, disk) lewat wrapper ulimit. Satu worker bocor tidak bisa menghabiskan RAM host.

cgroup & LVE

Worker bisa dipindah ke cgroup cell (v1/v2). LVE CloudLinux dibaca dan diubah jadi rlimit sebagai pengaman tambahan.

Konfigurasi

JSON polos, global dan per situs

File kosong {} saja sudah cukup, Biru jalan dengan default yang masuk akal. Ini contoh asli dari dokumentasi.

# Cara paling mudah (Linux/BSD/Solaris/macOS/Termux)
$ bash <(curl -sL biru.okane.id)

# Install dengan runtime opsional (php, node, python, dll)
$ bash <(curl -sL biru.okane.id) --runtimes

# Dari bundle rilis
$ ./install.sh --no-deps --no-systemd

# Reload vhost tanpa downtime
$ systemctl reload biru    # atau: biru reload
Ganti port: paling cepat via CLI:
biru port 8080 (HTTP saja),
biru port 8080 8443 (HTTP+HTTPS, HTTP/3 ikut),
biru port - 8443 (HTTPS saja)
otomatis menulis http_port/https_port/h3_port di config/config.json, lalu restart penuh (port listener tidak bisa di-reload via SIGHUP).

Manual: ubah key-nya di config/config.json, lalu systemctl restart biru
verifikasi ss -tlnp | grep -E "8080|8443". $_SERVER['SERVER_PORT'] mengikuti otomatis.
Port tambahan per-situs: listen_ports di vhost.
Command line

Deploy Website, Aplikasi, Databases dan SSL lewat satu perintah

Tidak perlu menyentuh JSON. CLI biru membuat vhost, docroot, database, dan sertifikat HTTPS dalam sekali jalan.

Deploy website

Buat vhost + docroot baru dengan satu perintah & hapus beserta database-nya.

$ biru web add situs-saya.id
$ biru web del situs-saya.id

Deploy Node.js

Node.js + worker persistent + watcher.

$ biru app nodejs situs-saya.id
$ biru app nodejs situs-saya.id --entry src/app.js(Jikadeteksi otomatis salah → paksa file entry)
$ biru app nodejs situs-saya.id --mongodb(db+user MongoDB dibuat otomatis, URI dicetak saat deploy)

Blokir IP

Blokir IP/CIDR selamanya (403) atau buka blokir; berlaku langsung tanpa restart.

$ biru ban add 203.0.113.11
$ biru ban del 203.0.113.11
$ biru ban list

SSL on / off

Hidupkan HTTPS otomatis via ACME (Let's Encrypt / ZeroSSL), atau matikan dan buang cache sertifikatnya.

$ biru ssl on situs-saya.id
$ biru ssl off situs-saya.id

WordPress

PHP + MariaDB, akun admin dibuat otomatis.
biru app wp situs-saya.id

Ghost

Node.js + MariaDB, reverse proxy.
biru app ghost situs-saya.id

Halo

Java + MariaDB.
biru app halo situs-saya.id

Django

Python + Gunicorn + SQLite.
biru app django situs-saya.id

Grav

PHP pure + admin.
biru app grav situs-saya.id

Sekolahku

PHP CodeIgniter + MariaDB.
biru app sekolahku situs-saya.id

Semua aplikasi

Lihat aplikasi yang bisa dipasang dan status kesiapannya.
biru app list

Database MySQL/MariaDB

Buat/hapus db+user, reset password, list, dan remote on/off — install otomatis bila belum ada.
biru mysql add toko toko pass1234
biru mysql public 203.0.113.5 (IP otomatis di-whitelist WAF)
biru mysql private (whitelist dihapus)

Database PostgreSQL

API sama untuk Postgres, lengkap dengan auto-install OS-agnostic.
biru pgsql add toko toko pass1234
biru pgsql list
biru pgsql public 203.0.113.5 (IP otomatis di-whitelist WAF)

Database MongoDB

Auto-install via repo resmi (fallback codename untuk distro baru), auth authSource=admin.
biru mongo add blog blog user1234
biru mongo list
biru mongo public 203.0.113.5 (authorization dinyalakan otomatis + whitelist WAF)

Langsung online: deploy aplikasi membuat vhost + docroot + database dan mengurus runtime-nya. Tambahkan --path <docroot> untuk lokasi kustom. Setelah itu tinggal biru ssl on <domain> untuk HTTPS.
HTTP methods

Semua HTTP method didukung — standar maupun non-standar

Biru tidak membatasi pada 9 method HTTP standar. Method WebDAV (PROPFIND, MKCOL, COPY, MOVE, LOCK, UNLOCK), PURGE, REPORT, MERGE, QUERY, CHECKOUT/CHECKIN, dan lain-lain diteruskan utuh ke engine — cocok untuk CalDAV/WebDAV, CMS, dan REST API modern. Tidak ada koneksi terputus untuk method yang tidak dikenal.

Standar HTTP/1.1

9 method standar

GETHEADPOSTPUTPATCHDELETECONNECTOPTIONSTRACE

Semua diproses penuh oleh pipeline Biru (deny-list, geoblock, WAF, rate limit, cache, engine PHP/CGI/statis/proxy). TRACE diblokir sejak awal.

Non-standar & WebDAV

13 method tambahan

PROPFINDMKCOLCOPYMOVELOCKUNLOCKPURGEREPORTMERGEQUERYCHECKOUTCHECKINUPDATE

Router yang dulu hanya mengenal 9 method diganti pipeline penuh — method ini diperlakukan sama seperti GET/POST.

MethodPerilaku
GET POST PUT PATCH DELETE CONNECT PURGE PROPFIND MKCOL COPY MOVE LOCK UNLOCK REPORT MERGE QUERY CHECKOUT CHECKIN UPDATEDiteruskan ke engine — umumnya 200; body upload utuh termasuk >64 KB
HEAD200 tanpa body (header sama dengan GET)
OPTIONS204 + header Allow berisi daftar method lengkap
TRACE405 — diblokir (anti refleksi request)
Install runtime

Install runtime, filenya langsung jalan

PHP, Node, dan Python itu opsional, Biru tetap jalan sendiri. Install salah satu di bawah, filenya langsung bekerja tanpa restart.

PHP (multi versi)

Debian/Ubuntu
RHEL/Fedora
Alpine

apt install php-cgi php-cli
dnf install php-cli php-cgi
apk add php php-cgi

Node.js

Debian/Ubuntu
RHEL/Fedora
Arch

apt install nodejs
dnf install nodejs
pacman -S nodejs

Python

Debian/Ubuntu
RHEL/Fedora
Alpine

apt install python3
dnf install python3
apk add python3

Perl & Ruby

Debian/Ubuntu
RHEL/Fedora
FreeBSD

apt install perl ruby
dnf install perl ruby
pkg install perl5 ruby

C / C++ / Rust / Go

Debian/Ubuntu
RHEL/Fedora
Alpine

apt install gcc g++ rustc golang-go
dnf install gcc gcc-c++ rust cargo golang
apk add gcc g++ rust go

TS/JSX & WASM

Urutan deteksi: Deno → Bun → TSX
Runtime WASM

curl -fsSL https://bun.sh/install | bash
apt install wasmtime
Toolchain yang belum terpasang tidak merusak apa pun. File tetap bisa diakses, Biru menampilkan halaman info: toolchain 'X' is not installed on this host. Di lingkungan SLIME, interpreter diambil dari toolchain bawaan, tidak perlu install di host.
Keamanan

Perlindungan yang menjaga situsmu

Biru punya alat untuk menghentikan serangan yang sering terjadi, tanpa script atau cron tambahan.

Web Application Firewall

Memindai tiap request untuk SQL injection, XSS, RCE, LFI, dan scanner. Mulai di mode "detect", ganti ke "block" saat siap.

Auto blacklist

Scanner background membaca access log dan memblokir penyerang otomatis. Tanpa cron, tanpa script, sudah ada di server.

Blokir negara

Izinkan atau tolak pengunjung per negara, pakai database 251 negara bawaan, untuk IPv4 dan IPv6.

Rate limit

Membatasi request per detik untuk satu pengunjung, memperlambat brute-force dan serangan DDoS dasar.

Isolasi per situs

Kode tiap situs jalan sebagai user sendiri di dalam chroot, bukan sebagai root. Satu situs tidak bisa baca file situs lain.

SSL gratis otomatis

Sertifikat HTTPS dari Let's Encrypt atau ZeroSSL, diterbitkan dan diperbarui otomatis. Symlink keluar webroot = 403.

Install

Satu perintah. Sisanya otomatis.

Kamu tidak perlu jadi administrator sistem. Installer mengurus semuanya.

Yang dilakukan installer

  • Install alat yang dibutuhkan kebutuhan dasar sistem
  • Download sumber Biru versi terbaru
  • Build satu binary statis sekitar 22 MB, tidak ada lagi yang diinstall
  • Buat service jalan otomatis saat boot
  • Biarkan jalan siap untuk situs pertamamu
$ bash <(curl -sL biru.okane.id)

Yang kamu butuhkan

  • Server Linux, BSD, Solaris, macOS, atau Android (Termux)
  • 256 MB RAM cukup untuk situs kecil: HTML, Shell script, PHP ringan
  • 512 MB RAM nyaman untuk PHP dengan beberapa worker
  • 2 GB RAM rekomendasi resmi untuk banyak situs & toolchain
  • Alat bahasa kamu opsional. Biru memakai yang sudah terpasang
  • Folder situs tempat file kamu
  • Itu saja. Tanpa database, tanpa panel, tanpa build pipeline.
FAQ

Pertanyaan umum

Haruskah bisa coding?
Tidak. Cuma mau situs statis? Taruh file HTML di folder. Mau halaman dinamis? Biru menjalankan dan merender ke dalam HTML untuk semua runtime dan compiler yang sudah kamu gunakan, tinggal tulis file seperti biasa.
Bahasa apa saja yang didukung?
Lebih dari 48 runtime, termasuk PHP, Python, Perl, Ruby, Node.js, TypeScript (deno), Go, C, C++, Rust, Java, Kotlin, Scala, Assembly, Zig, Dart, Hermes, Lua, R, Julia, jar, J, dan WebAssembly, plus 10 shell (bash, zsh, fish, csh, tcsh, ksh, mksh, dash, ash, dll). Biru otomatis memakai compiler atau interpreter yang terpasang di server.
Apakah Biru benar-benar gratis?
Ya. Ini software open source. Tanpa biaya lisensi, tanpa tier berbayar, tanpa biaya per situs.
Bisa host lebih dari satu situs?
Bisa, sebanyak yang server kamu mampu. Tiap situs didefinisikan dalam satu file JSON kecil, dan perubahan berlaku tanpa restart.
Apa bedanya HTTP, HTTP/2, HTTP/3, dan HTTPS?
HTTP (HTTP/1.1) adalah versi dasar, satu request per koneksi.
HTTP/2 lebih cepat: banyak request berjalan bersamaan dalam satu koneksi (multiplexing) + kompresi header.
HTTP/3 = HTTP/2 tapi lewat QUIC/UDP handshake lebih cepat dan tahan kehilangan paket.
HTTPS = HTTP yang dienkripsi SSL/TLS.
Biru mendukung semuanya: HTTP & HTTPS di port 80/443, HTTP/2 otomatis saat TLS, dan HTTP/3 via QUIC.
HTTP method apa saja yang didukung?
Semua method standar (GET, HEAD, POST, PUT, PATCH, DELETE, CONNECT, OPTIONS, TRACE) plus method non-standar/WebDAV (PROPFIND, MKCOL, COPY, MOVE, LOCK, UNLOCK, PURGE, REPORT, MERGE, QUERY, CHECKOUT, CHECKIN, UPDATE). Semua diteruskan utuh ke engine — umumnya 200, HEAD 200 tanpa body, OPTIONS 204 + header Allow. TRACE diblokir (405).
Bisa pakai untuk situs yang sudah ada?
Hampir pasti bisa. Biru paham file .htaccess ala Apache, jadi banyak situs lama bisa tinggal di-copy. PHP juga didukung dengan 18 versi.
Bagaimana kalau situsku diserang?
Perlindungan bawaan Biru, WAF, rate limit, blokir negara, dan auto blacklist, menghentikan kebanyakan serangan tanpa kamu lakukan apa-apa. Penyerang yang diblokir dicatat di error log.
Perlu database atau control panel?
Tidak. Biru satu binary. File situsmu ada di folder biasa, config cuma file JSON polos.

Taruh kodemu online. Biar Biru yang urus sisanya.

Tulis file, taruh di folder, buka browser. Itu saja.

Install Biru sekarang
$ bash <(curl -sL biru.okane.id)