سایت استاتیک

هاست سایت استاتیک با nginx

HTML آماده یا خروجی هر ابزار بیلدی را با nginx سرو کنید؛ بدون سرور برنامه در زمان اجرا، با gzip و گواهی SSL روی دامنه‌ی خودتان.

تشخیص
index.html یا outputDir در sakoocloud.json
بیلد
اختیاری، با buildCommand
سرو
nginx با gzip
پورت
80
لوگوی سایت استاتیک

ساده‌ترین نوع استقرار

اگر index.html در ریشه باشد، همان پوشه سرو می‌شود. اگر سایت را با ابزاری مثل Vite، Hugo، Eleventy یا Next.js export می‌سازید، buildCommand و outputDir را در sakoocloud.json بنویسید تا اول بیلد و بعد سرو شود.

nginx فایل‌ها را با gzip سرو می‌کند و با spa: true مسیرهای ناشناخته را به index.html برمی‌گرداند. منابع زمان اجرا نزدیک صفر است، پس سایت استاتیک ارزان‌ترین نوع استقرار است.

مناسب برای

  • لندینگ و سایت شرکتی
  • مستندات و بلاگ
  • خروجی Hugo، Eleventy یا Jekyll
  • اپ تک‌صفحه‌ای بیلد‌شده

مسیر استقرار سایت استاتیک

  1. تشخیص

    index.html در ریشه یا outputDir در sakoocloud.json.

    index.html
  2. بیلد (اختیاری)

    اگر buildCommand تعریف شده باشد، اجرا می‌شود.

    npm run build
  3. سرو

    پوشه‌ی خروجی با nginx روی پورت 80 سرو می‌شود.

    nginx :80

خروجی یک استقرار واقعی

sakoocloud deploy
sakoocloud deploy
✔ Packed 0.5MB
✔ Source uploaded
ℹ Build started · dep_7k2m9q
#4 [builder 1/4] FROM node:22-alpine
#6 [builder 3/4] RUN npm run build
#8 [stage-1 1/2] FROM nginx:alpine
#10 [stage-1 2/2] COPY dist /usr/share/nginx/html
#12 exporting to image
✔ Deployed — app is running.
→ https://my-site.sakooapps.ir

تنظیم برای سایتی که بیلد دارد

اگر فقط HTML دارید، به این فایل هم نیازی نیست.

{
  "runtime": "static",
  "buildCommand": "npm run build",
  "outputDir": "dist",
  "spa": false
}

تنظیمات

پوشه‌ی خروجی ابزارهای رایج

ابزارoutputDir
Vite، Astrodist
Next.js با output: exportout
Hugopublic
Eleventy_site
Create React Appbuild

sakoocloud.json

فیلدکاربرد
buildCommandدستور بیلد
outputDirپوشه‌ای که سرو می‌شود
spaبرگرداندن مسیرهای ناشناخته به index.html

همراه هر استقرار

این‌ها به رانتایم بستگی ندارند و برای هر اپ روی سکو کلود فعال‌اند. بعضی، مثل مقیاس‌دهی خودکار و کران‌جاب، به پلن بستگی دارند.

خطاهای رایج

صفحه‌ی ۴۰۴ nginx

علتoutputDir با پوشه‌ی خروجی بیلد یکی نیست یا index.html در آن نیست.

راه‌حلمسیر خروجی را در sakoocloud.json اصلاح کنید.

با رفرش یک مسیر داخلی، ۴۰۴ برمی‌گردد

علتمسیرهایی مثل /dashboard فایل واقعی ندارند و روتر سمت مرورگر آن‌ها را می‌سازد.

راه‌حلدر sakoocloud.json حالت SPA را روشن کنید تا مسیرهای ناشناخته به index.html برگردند.

sakoocloud.json
{
  "outputDir": "dist",
  "spa": true
}

بیلد شکست می‌خورد

علتلاک‌فایل کامیت نشده یا buildCommand اشتباه است.

راه‌حللاک‌فایل را کامیت کنید و دستور را محلی امتحان کنید.

پرسش‌های متداول

سایت استاتیک چقدر منابع مصرف می‌کند؟

بسیار کم؛ nginx فقط فایل سرو می‌کند و با کوچک‌ترین پلن هم کار می‌کند.

می‌توانم چند دامنه وصل کنم؟

بله. هر دامنه را جدا اضافه کنید؛ گواهی SSL برای هر کدام خودکار صادر می‌شود.

فرم تماس سایت استاتیک را کجا پردازش کنم؟

در یک تابع بدون سرور یا یک API کوچک Node.js یا Python کنار سایت.

جزئیات بیشتر در راهنمای سایت استاتیک در مستندات و مرجع CLI.

سریع‌ترین مسیر از کد تا انتشار.

ابتدا ابزار خط فرمان را نصب کنید، سپس همین‌جا امتحان کنید. (بنویسید، یا یکی از پیشنهادهای پایین ترمینال را بزنید)

~/projects/my-app
امتحان کنید