Lewati ke konten utama
Panduan penyiapan Studio Saya web developer

Penyiapan Studio untuk web developer

Unduhan Studio berisi kode sumber lengkap kedua edisi, alat deploy untuk Cloudflare, dan dokumen teknis. Panduan ini adalah versi ringkas untuk orang yang lebih suka menjalankan setiap langkah sendiri.

Terbaik untuk
Web developer dan tim IT yang lebih suka memasang Studio sendiri, dari kode sumber di dalam unduhan Studio.
Yang Anda butuhkan
Unduhan Studio; untuk edisi PHP, host Apache, LiteSpeed, atau nginx dengan PHP 8.0 atau yang lebih baru; untuk edisi Cloudflare, akun Cloudflare dengan R2 yang sudah diaktifkan dan Node.js 20 atau yang lebih baru.
Edisi
Dua edisi dari aplikasi yang sama dengan URL, API unggahan, dasbor, dan peran yang sama: aplikasi PHP tanpa database, dan Cloudflare Worker yang didukung R2 dan D1.

Dapatkan unduhan Studio

Masuk ke Maxisnap dengan akun yang memiliki Studio, lalu:

  • Di Windows: di Maxisnap, buka Pengaturan → Akun → Wizard penyiapan Maxisnap Studio, klik “Mulai”, lalu “Unduh dasbor”. Maxisnap menyimpan ZIP Studio ke folder Unduhan Anda dan membuka folder tersebut.
  • Di Mac: di Maxisnap, buka Settings → Welcome & Help → Studio Setup Guide, klik “Get Started”, lalu “Download Dashboard”. Maxisnap menyimpan ZIP Studio ke folder Unduhan Anda.

Ekstrak file ZIP. Di Windows, klik kanan file tersebut dan pilih “Ekstrak Semua”. Di Mac, klik dua kali file tersebut.

Maxisnap-Studio-v<version>/
  Maxisnap Studio - Start Here.html   guided setup (branding + every route)
  snaps/                              PHP edition: upload this folder to a web host
  cloudflare/                         Cloudflare Workers edition (Worker + R2 + D1)
    deploy/cli.mjs                    deploys it through the Cloudflare API (Node 20+)
  docs/Developer guide.html           architecture, upload API, security, updates
  docs/Cloudflare setup - technical brief.html
  AGENTS.md                           instructions for AI coding assistants

Developer guide lengkap membahas arsitektur, API unggahan, kunci dan peran, model keamanan, serta pemecahan masalah. File-nya adalah docs/Developer guide.html di dalam unduhan.

Edisi PHP: unggah dan selesaikan penyiapan

  1. Unggah folder snaps ke root web, termasuk file .htaccess tersembunyinya, sehingga hasilnya adalah public_html/snaps/index.php. Untuk snaps.zip bermerek dari halaman Start Here, caranya sama; ekstrak langsung di tempatnya dan jangan sampai terbentuk snaps/snaps yang bersarang.
  2. Buka https://yourcompany.com/snaps/ satu kali. Halaman penyiapan memeriksa PHP dan izin folder, lalu menyarankan kunci Admin sepanjang 40 karakter; kunci harus memiliki setidaknya 16 karakter. Salin kunci tersebut, lalu klik “Create my dashboard”.
  3. Pada nginx, buat ulang aturan perutean dan penolakan dari snaps/.htaccess. Jaga agar uploads, data, dan branding tetap privat.

Halaman penyiapan menulis your-settings.php, yang tetap ada setelah pembaruan:

'dashboard_key' => '…',          // the Admin key; the setup page writes it
'base_url'      => 'https://yourcompany.com/snaps',  // the address setup was opened at; fix it here if share links come out wrong
'max_upload_mb' => 500,          // your host's PHP limits still apply

Edisi Cloudflare: deploy dari terminal

CLI bawaan membaca akun terlebih dahulu, menampilkan rencana tentang apa yang akan dibuat dan apa yang tidak akan disentuh, serta menolak nama yang sudah dipakai. Jika proses deploy berhenti di tengah jalan, menjalankan perintah yang sama lagi akan melanjutkannya tanpa membuat apa pun dua kali.

cd cloudflare
# Option 1: the bundled CLI (Node 20+; plan first, then --yes). PowerShell:
$env:CLOUDFLARE_API_TOKEN = "<token: Account Settings Read; Workers Scripts, R2 and D1 Edit;
                              for --zone/--hostname also Zone Read, DNS Read, Workers Routes Read>"
node deploy/cli.mjs whoami
node deploy/cli.mjs plan --account <account id> --name snaps
#   no workers.dev name on the account yet? The plan asks you to "Choose your free
#   workers.dev name": add --subdomain <your-company> to both commands (account-wide).
#   A subdomain of your domain as well: add --zone <zone id> --hostname snaps.example.com
node deploy/cli.mjs deploy --account <account id> --name snaps --yes
#   prints the Studio address and the Admin key once, and writes deployment.json here

# Option 2: plain Wrangler (create the bucket and database, set their ids in wrangler.jsonc)
npm install
npx wrangler r2 bucket create maxisnap-studio-media
npx wrangler d1 create maxisnap-studio
npx wrangler secret put ADMIN_KEY
npm run sync
npx wrangler deploy

Proses deploy menampilkan alamat Studio dan kunci Admin satu kali saja, dan menulis deployment.json di folder tempat proses itu dijalankan. Simpan file itu: update dan remove memakainya.

Pastikan Studio berfungsi

curl.exe -s -H "X-Dashboard-Key: <Admin key>" https://<studio address>/api/health.php
# {"ok":true,"app":"Maxisnap Studio","version":"…"}   the Cloudflare edition adds "edition":"cloudflare"

Lalu buka alamat Studio di browser dan masuk dengan kunci Admin. 401 berarti kunci salah; 404 berarti alamat atau folder salah.

Hubungkan Maxisnap

  • Maxisnap untuk Windows: buka Pengaturan → Akun → Wizard penyiapan Maxisnap Studio, klik “Mulai”, lalu “Berikutnya” sampai langkah 4, “Hubungkan Maxisnap”. Tempel alamat dan kunci Studio Anda, klik “Uji koneksi”, lalu “Berikutnya”, lalu “Selesai & Simpan” di halaman terakhir. Kunci Admin dari penyiapan dapat dipakai, begitu juga kode unggah dari People & access di dasbor Anda.
  • Maxisnap untuk Mac: buka Settings → Welcome & Help → Studio Setup Guide dan pilih “I already have a dashboard”. Tempel alamat dan kunci Studio Anda, klik “Test Connection”, lalu “Next”, lalu “Finish & Save”.

Kenali API unggahan

  • Aplikasi Maxisnap mengunggah dengan header X-Dashboard-Key ke api/upload.php. Gambar (PNG, JPG, GIF, dan WebP) dan video (MP4, WebM, dan MOV) diterima.
  • Maxisnap untuk Windows dan Maxisnap untuk Mac mengirim setiap unggahan ke Studio di Cloudflare dalam satu permintaan, dan Studio menerimanya hingga 25 MB per file.
  • Edisi Cloudflare juga memiliki API unggahan per bagian (chunked) untuk file yang lebih besar, yang dijelaskan di Developer guide: api/upload/start, part, dan complete.
  • Halaman berbagi dan file medianya memakai jalur berikut; semua jalur lainnya bersifat internal: /<slug> /<slug>.<ext>

Perbarui atau hapus nanti

PHP: ganti hanya file yang tercantum di snaps/How to update.txt, lalu hapus cache host dan CDN. Tangkapan, pengguna, branding, dan pengaturan tetap ada.

Cloudflare: jalankan perintah di bawah ini dari folder cloudflare pada paket yang lebih baru, dengan deployment.json lama sudah disalin ke dalamnya.

# Update: from a newer package's cloudflare folder, with the old deployment.json copied in
node deploy/cli.mjs update --record deployment.json --yes
# New Admin key (shown once):
node deploy/cli.mjs update --record deployment.json --yes --new-admin-key
# Remove the custom domain and the Worker; the bucket and database (the captures) stay
node deploy/cli.mjs remove --record deployment.json --yes
# Also delete every capture: cannot be undone
node deploy/cli.mjs remove --record deployment.json --yes --delete-data

Baca ringkasan teknis Cloudflare: setiap resource, izin, dan panggilan API.

Jika terjadi masalah

Health check mengembalikan 401

{"error":"unauthorized"}

Kuncinya salah, dinonaktifkan, atau lebih pendek dari yang diterima Studio, atau penyiapan di host PHP belum selesai. Kirim kunci di header X-Dashboard-Key, jangan pernah di alamat.

Health check mengembalikan 404, atau HTML alih-alih JSON

Alamat atau foldernya salah, host mengabaikan aturan .htaccess milik Studio (nginx, atau Apache tanpa penulisan ulang), atau sebuah CDN atau lapisan keamanan menjawab sebagai ganti Studio. Pada nginx, buat ulang aturan perutean dan penolakan dari snaps/.htaccess; Developer guide memuat daftarnya.

Health check mengembalikan 429

Too many incorrect codes. Wait a few minutes before trying again.

Setelah kunci yang salah dimasukkan berulang kali, Studio menolak percobaan berikutnya dari jaringan Anda selama 15 menit. Tunggu, lalu coba lagi dengan kunci yang benar.

Unggahan mendapat respons 403 di domain kustom

Cloudflare Access, aturan WAF, atau Bot Fight Mode pada hostname itu memblokir unggahan dari aplikasi. Kecualikan hostname Studio; ringkasan teknis memuat daftar periksanya. Kode Viewer juga mendapat 403 saat mengunggah: gunakan kunci Admin atau kode unggah.

Unggahan mendapat respons 413

Pada PHP, upload_max_filesize, post_max_size, atau batas dari host atau CDN lebih kecil daripada ukuran file; batas Studio sendiri adalah max_upload_mb di your-settings.php.

Di Cloudflare, satu permintaan dapat membawa hingga 25 MB; file yang lebih besar memerlukan API unggahan per bagian (chunked).

Setiap halaman Studio di Cloudflare mengembalikan 503

This Studio is not set up correctly: its ADMIN_KEY secret must be at least 16 characters.

Atur secret ADMIN_KEY yang lebih panjang, misalnya dengan perintah update dan --new-admin-key, atau dengan npx wrangler secret put ADMIN_KEY.

Rencana berhenti di sebuah baris “x”

Setiap baris “x” adalah blocker, dan baris itu menjelaskan apa yang harus dilakukan: aktifkan R2, tambahkan --subdomain untuk akun yang belum punya nama workers.dev sendiri, atau ubah --name, --zone, atau --hostname bila nama tidak valid, sudah dipakai, atau berada di luar domain. Lalu jalankan plan lagi. Nama bucket dan database yang sudah dipakai mendapat nama berikutnya yang tersedia, tanpa blocker.

CLI menolak deployment.json

deployment.json belongs to the Studio "snaps". Keep it, and pass --record <another file> for this one.

Setiap Studio memiliki record-nya sendiri. Simpan file itu dan berikan record lain untuk Studio kedua dengan --record. Tanpa record apa pun, perintah update dan remove tidak dapat dijalankan; berikan jalur file yang benar.

Studio di workers.dev menampilkan “Error 1027”

Batas permintaan harian paket gratis telah tercapai. Batas ini direset pada tengah malam UTC.

Masih butuh bantuan?

Kirim email kepada kami dan seseorang akan membalas, biasanya dalam satu hari kerja. Detail berikut membantu kami menjawab sekaligus:

  • Opsi penyiapan yang Anda pilih dan langkah yang sedang Anda kerjakan.
  • Screenshot layar, dengan pesan kesalahan apa pun secara lengkap.
  • Di mana Studio Anda akan dipasang: akun Cloudflare baru atau yang sudah ada, atau nama perusahaan hosting web Anda.
  • Versi Maxisnap Anda: di Windows pada Pengaturan, lalu Tentang; di Mac pada Maxisnap, lalu About Maxisnap.

Mohon jangan kirimkan kunci Admin, kunci Cloudflare, atau kata sandi Anda. Kami tidak membutuhkannya untuk membantu Anda.

Panduan penyiapan lainnya