fix: update SKILL.md from static to SSR mode

- Change output: 'static' to output: 'server' with node adapter
- Add @astrojs/node adapter documentation
- Update Static vs SSR explanation for Easypanel deployment
This commit is contained in:
2026-04-18 11:02:48 +07:00
parent 97df5aac8d
commit 6583d23c19

View File

@@ -59,18 +59,21 @@ package.json
### Static vs SSR ### Static vs SSR
- **Static (default):** Pre-built HTML + รันบน CDN - **SSR (default สำหรับ consent):** ใช้ `output: 'server'` สำหรับ API routes + consent logging
- **SSR:** ใช้ `output: 'server'` สำหรับ dynamic pages - **Static:** Pre-built HTML + รันบน CDN (ไม่มี backend)
- Astro มี hybrid mode — บางหน้า static บางหน้า dynamic - **Hybrid:** บางหน้า static บางหน้า dynamic
**สำหรับ Easypanel:** ใช้ SSR mode เพื่อรองรับ Astro DB API routes
## Critical Configuration Rules ## Critical Configuration Rules
### 1. astro.config.mjs (Tailwind v4 + Tina) ### 1. astro.config.mjs (Tailwind v4 + Tina + SSR)
```javascript ```javascript
import { defineConfig } from 'astro/config' import { defineConfig } from 'astro/config'
import tailwindcss from '@tailwindcss/vite' import tailwindcss from '@tailwindcss/vite'
import tina from 'tinacms' import tina from 'tinacms'
import node from '@astrojs/node'
export default defineConfig({ export default defineConfig({
integrations: [ integrations: [
@@ -82,7 +85,8 @@ export default defineConfig({
vite: { vite: {
plugins: [tailwindcss()], // Tailwind v4 ใช้ @tailwindcss/vite plugins: [tailwindcss()], // Tailwind v4 ใช้ @tailwindcss/vite
}, },
output: 'static', output: 'server',
adapter: node({ mode: 'standalone' }),
server: { server: {
port: 4321, port: 4321,
}, },
@@ -632,8 +636,8 @@ import tina from 'tinacms';
export default defineConfig({ export default defineConfig({
integrations: [tina()], integrations: [tina()],
vite: { plugins: [tailwindcss()] }, vite: { plugins: [tailwindcss()] },
output: 'static', output: 'server',
// Astro DB รวมอยู่แล้ว ไม่ต้องติดตั้งเพิ่ม adapter: node({ mode: 'standalone' }),
}); });
``` ```