برای بیشتر پروژه‌های وب (سایت PHP، اپلیکیشن لاراول، API، وب‌اپلیکیشن Node.js) هاست اشتراکی کافی است، به شرطی که پروژه به پردازش دائمی پس‌زمینه یا نرم‌افزار سفارشی روی سرور نیاز نداشته باشد. اگر کار شما نوشتن کد است نه نگهداری سرور، هاست وقت زیادی برایتان آزاد می‌کند. محدودیت‌هایش را هم باید قبل از شروع بدانید، نه وسط پروژه.

چه چیزهایی روی هاست رایکت در دسترس است؟

نیاز پروژه وضعیت توضیح
PHP دارد نسخه‌های ۵.۴ تا ۸.۴؛ برای هر دامنه جدا
تنظیمات php.ini دارد از MultiPHP INI Editor
MySQL و phpMyAdmin دارد
Git دارد کلون و Pull از Git Version Control سی‌پنل
کرون‌جاب دارد برای زمان‌بند لاراول و کارهای دوره‌ای
ساب‌دامین دارد برای محیط آزمایشی
SSL رایگان دارد
ارسال ایمیل با SMTP دارد حداکثر ۲۰۰ ایمیل در روز
Node.js در سرویس جدا هاست Node.js با PM2، NPM و انتخاب نسخه
دسترسی ترمینال (SSH) ندارد کارها از طریق سی‌پنل، Git و کرون انجام می‌شود
نصب نرم‌افزار دلخواه روی سرور ندارد نیاز به سرور

بدون ترمینال چطور کار کنیم؟

نبودن SSH روی روش کار اثر دارد، ولی مانع نیست:

  • وابستگی‌ها (Composer): روی سیستم خودتان نصب کنید و پوشه‌ی vendor را همراه پروژه بفرستید، یا آن را در مخزن استقرار نگه دارید.
  • ساخت فرانت (npm run build): روی سیستم خودتان یا در CI بسازید و خروجی را منتقل کنید.
  • مایگریشن دیتابیس: خروجی SQL را از phpMyAdmin وارد کنید، یا یک مسیر محافظت‌شده در پروژه برای اجرای مایگریشن بگذارید و بعد از استفاده بردارید.
  • کش کانفیگ و روت لاراول: قبل از ارسال بسازید.
  • استقرار: با Git Version Control سی‌پنل، Pull کنید. (کار با Git در سی‌پنل)
ابزار Git Version Control در سی‌پنل
Git Version Control در سی‌پنل: کلون مخزن و گرفتن آخرین تغییرات

زمان‌بندی کارها

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

صفحه Cron Jobs در سی‌پنل برای زمان‌بندی اجرای دستورها
Cron Jobs در سی‌پنل

از روی نوع پروژه

پروژه سرویس مناسب
سایت PHP یا لاراول با کاربر محدود هاست اقتصادی
لاراول با کاربر و درخواست زیاد هاست پربازدید
Express، NestJS، Next.js، API هاست Node.js (۸ هسته و ۸ گیگ رم)
فرانت استاتیک (خروجی build) هاست اقتصادی
وب‌سوکت و realtime هاست Node.js
صف دائمی، چند سرویس، داکر سرور

راهنمای مخصوص هرکدام: هاست لاراول و انتخاب هاست Node.js.

چهار نشانه که وقت سرور است

  1. پروژه به پردازش دائمی پس‌زمینه نیاز دارد که با کرون قابل جایگزینی نیست.
  2. نرم‌افزاری می‌خواهید که روی هاست نصب نیست.
  3. به دسترسی کامل سیستم‌عامل یا داکر نیاز دارید.
  4. با بالاترین پلن هاست هم به سقف منابع می‌رسید.

تا قبل از این‌ها، سرور یعنی وقت گذاشتن برای کاری که پول‌ساز نیست. مقایسه در هاست اشتراکی یا سرور مجازی.

برای پروژه‌های مشتری

اگر برای مشتری پروژه تحویل می‌دهید، می‌توانید هاست را با کد خودتان برایش بگیرید و از خرید و تمدید سهم داشته باشید. (درآمد از هاست مشتری‌ها)

سوال‌های رایج

محیط آزمایشی (staging) را کجا بسازم؟

روی یک ساب‌دامین همان هاست، با دیتابیس جدا و رمز روی پوشه.

فایل env. امن است؟

اگر بیرون از پوشه‌ی عمومی (public_html) باشد، بله. آن را داخل پوشه‌ی وب نگذارید.

لاگ خطاها را کجا ببینم؟

بخش Errors سی‌پنل و لاگ خود فریم‌ورک. (لاگ خطا در سی‌پنل)