در این راهنما یاد میگیرید
- رابط اجرای جنگو و نسخهٔ پایتون را با نیازهای برنامه هماهنگ کنید.
- migration، فایلهای static و آپلود کاربران را روی هاست آزمایشی بررسی کنید.
- مصرف منابع و امکان بازیابی اطلاعات را پیش از سفارش بسنجید.
هاست جنگو چیست و چه کاری انجام میدهد؟
هاست جنگو محیطی برای اجرای سایت یا API ساختهشده با Django روی سرور است. وقتی کاربر صفحهای را باز میکند، سرور وب درخواست را به برنامهٔ جنگو میرساند. برنامه میتواند از دیتابیس بخواند، فرم را پردازش کند یا پاسخ JSON برگرداند.
برای انتخاب، سه بخش پروژه را جداگانه بررسی کنید. اول محیطی که کد را اجرا میکند، بعد دیتابیس و در آخر فایلها. ممکن است صفحهٔ اصلی روی یک پلن بالا بیاید، اما هنگام ذخیرهٔ فرم، نمایش ظاهر پنل مدیریت یا بازکردن فایل آپلودی خطا ببینید. هر سه بخش را در دورهٔ تست امتحان کنید.
هاست مناسب برای Django باید WSGI داشته باشد یا ASGI؟
جنگو از هر دو رابط پشتیبانی میکند. برای سایت محتوایی، پنل مدیریت یا API معمولی که از طریق HTTP پاسخ میدهد، محیط WSGI سازگار میتواند کافی باشد. اگر پروژه با Django Channels ارتباط WebSocket برقرار میکند، پشتیبانی از اجرای ASGI و عبور WebSocket از پراکسی را در همان پلن بررسی کنید. مستندات رسمی استقرار Django
نسخهٔ Python را بر اساس نسخهٔ Django و وابستگیهای پروژه انتخاب کنید. از میزبان بپرسید چطور محیط مجازی، نصب پکیجها، اجرای فرمانهای manage.py و مشاهدهٔ لاگ انجام میشود. اگر برنامه Celery دارد، اجرای worker و دسترسی به سرویس صف پیام را جداگانه بسنجید.
دیتابیس، migration و فایلهای جنگو را چطور بررسی کنیم؟
| بخش پروژه | آزمون قبل از خرید |
|---|---|
| دیتابیس و migration | سازگاری موتور و نسخهٔ دیتابیس، درایور و دسترسی کاربر دیتابیس را بررسی کنید. روی دیتابیس آزمایشی migrate را اجرا کنید و یک رکورد نمونه بسازید و بخوانید. |
| فایلهای static | collectstatic را اجرا کنید و مطمئن شوید میزبان فایلهای جمعشده در STATIC_ROOT را سرو میکند. نمایش درست CSS پنل مدیریت یک آزمون سریع است. |
| فایلهای media | یک تصویر یا فایل آزمایشی آپلود کنید و بعد از راهاندازی دوبارهٔ برنامه آن را باز کنید. ماندگاری، سقف حجم و پوشش بکاپ فایلها را بررسی کنید. |
اگر سایت فعال را منتقل میکنید، یک کپی از دیتابیس و فایلهای کاربران را در محیط آزمایشی بازیابی کنید و مسیرهای اصلی را بسنجید. زمان اجرای migration و امکان بازگشت از نسخهٔ پشتیبان را پیش از جابهجایی دامنه بررسی کنید. مستندات migration در Django
بهترین هاست جنگو برای پروژهٔ شما چه ویژگیهایی دارد؟
- منابع متناسب با کار واقعی. مصرف حافظه و پردازنده را هنگام بارگذاری صفحات پرترافیک، اجرای گزارش یا چند درخواست همزمان بسنجید. برای دیسک، رشد دیتابیس و فایلهای کاربران را هم در نظر بگیرید. راهنمای انتخاب منابع هاست پایتون
- تنظیمات امن برای انتشار. مطمئن شوید میتوانید مقادیر خصوصی مثل
SECRET_KEYو رمز دیتابیس را خارج از مخزن عمومی نگه دارید، دامنه را درALLOWED_HOSTSتنظیم کنید و باDEBUG=Falseو HTTPS سایت را آزمایش کنید. - پشتیبانگیری و بازیابی. مشخص کنید بکاپ چه دادههایی را پوشش میدهد، تا چه مدت نگه داشته میشود و بازیابی دیتابیس و فایلها به چه صورت است.
- اتصال به سرویسهای دیگر. از محل سرور، اتصال به دیتابیس بیرونی، سرویس ایمیل و درگاه پروژه را در صورت نیاز آزمایش کنید. پاسخ صفحات را از شبکهٔ کاربران هم بسنجید.
پیش از انتشار عمومی، python manage.py check --deploy را با تنظیمات همان محیط اجرا کنید و هشدارهای مرتبط را برطرف کنید. سپس ورود، فرمها و مسیرهای مهم سایت را از مرورگر آزمایش کنید. چکلیست رسمی انتشار جنگو
قبل از خرید، یک نسخهٔ آزمایشی اجرا کنید
در دورهٔ سهروزهٔ تست هاست پایتون از یک دامنه یا زیردامنهٔ آزمایشی و دادهٔ نمونه استفاده کنید. یک مسیر کامل را طی کنید. برای مثال وارد پنل مدیریت شوید، یک رکورد با تصویر بسازید و بررسی کنید که صفحه و تصویر پس از راهاندازی مجدد همچنان در دسترس باشند.
اگر محیط اجرا و منابع مناسب بودند، منطقه و منابع را در صفحهٔ قیمت و خرید هاست جنگو انتخاب کنید. برای تنظیم ورودی WSGI، اتصال دیتابیس و انتشار روی دامنه، آموزش استقرار جنگو روی cPanel مراحل را نشان میدهد.
سوالات متداول انتخاب هاست Django
آیا هر هاست cPanel برای جنگو مناسب است؟
امکانات هر پلن را جداگانه بررسی کنید. نسخهٔ سازگار پایتون، امکان نصب وابستگیها و محیط اجرای WSGI یا ASGI موردنیاز پروژه باید در دسترس باشد.
آیا هاست جنگو حتماً باید PostgreSQL داشته باشد؟
موتور دیتابیس را با تنظیمات، وابستگیها و نیازهای پروژه هماهنگ کنید. اگر برنامه روی PostgreSQL ساخته شده یا از قابلیتهای آن استفاده میکند، پشتیبانی از نسخهٔ سازگار و اتصال درایور را پیش از خرید بررسی کنید.
چرا صفحهٔ مدیریت باز میشود ولی ظاهر آن درست نیست؟
در محیط انتشار، نتیجهٔ collectstatic، مقدار STATIC_URL و تنظیم سرو فایلهای static را بررسی کنید. در مرورگر ببینید درخواست CSS با چه وضعیت و آدرسی پاسخ میگیرد.