Best-practice, từng bước — từ source React tới URL công khai https://<tên>.entry.io.vn. Miễn phí, thay thế ngrok.
dist/), không expose dev server (npm run dev) — an toàn & nhẹ hơn.npm run build sinh ra thư mục dist/ — đây là thứ sẽ đưa ra public.
-s = chế độ SPA (React Router fallback đúng). Cách khác: npm run preview -- --port 3000.
Mở terminal mới (giữ serve đang chạy):
→ Website online tại https://my-app.entry.io.vn (HTTPS tự động). Đổi my-app thành tên bạn muốn.
-R <tên>:80:... quyết định URL. Bỏ tên để được cấp ngẫu nhiên.| Tình huống | Cách đúng |
|---|---|
| Production vs dev | Luôn build + serve dist/. Không expose npm run dev ra public. |
| Dev server Vite báo "Blocked request" | Thêm server: { allowedHosts: ['.entry.io.vn'], host: true } vào vite.config.js. |
| Permission denied (publickey) | Public key chưa thêm vào Dashboard ▸ SSH Keys. |
| Subdomain cố định | Gói cộng đồng giữ tối đa 5 subdomain ở Dashboard. |
| Chạy 24/7 | systemd + autossh (mục "Chạy ngầm" trên trang chủ). |