جنگو یک فریمورک متنباز است که در گسترش صفحات وب کاربرد دارد.
در ادامه آموزش دیپلوی جنگو در هاست cpanel بررسی میکنیم.
مراحل کار به طور کلی شامل موارد زیر میشود:
مراحل نصب جنگو در هاست جنگو
- آپلود و یا کلون کردن پروژه بر هاست
اگر از گیت استفاده میکنید به راحتی میتوانید پروژهی خود را روی هاست کلون کنید.
- ساخت یک محیط مجازی پایتون ( virtualenv ) متناسب با ورژن پایتون استفاده شده در پروژه
- نصب پکیج های مورد نیاز پروژه در محیط مجازی ساخته شده
- تنظیم کردن تنظیمات مربوط به ارتباط وبسرور و جنگو
- تنظیم کردن پروژه برای استفادهی نهایی
آپلود و یا کلون کردن پروژه بر هاست
اگر از گیت استفاده میکنید ابتدا وارد کنترل پنل هاست پایتون خود شده و در صفحهی اصلی گزینه ی git را پیدا کنید و روی آن کلیک کنید.
سپس در صفحهی باز شده بر دکمه Create کلیک کنید تا به صفحهی زیر منتقل شوید.
لینک پروژتون رو در بخش clone URL قرار دهید و سپس آدرس دلخواه خودتون رو تعیین کنید سپس دکمهی Create را بزنید و منتظر بمانید تا پروژه به صورت کامل کلون شود.
ساخت یک محیط مجازی پایتون ( virtualenv ) متناسب با ورژن پایتون استفاده شده در پروژه
در صفحهی اصلی کنترل پنل خود در شاخهی Software بر روی Setup Python Apps کلیک کنید.
در صفحهی جدید بر دکمهی CREATE APPLICATION کلیک کنید تا وارد صفحهی زیر شوید.
در این صفحه در ابتدا ورژن پایتون مورد نظر خود را انتخاب کنید. سپس در Application root آدرس پروژهی خودتون که در هاست آپلود و یا کلون کردهاید را وارد کنید. بخش بعدی آدرسی از دامنهی شما هست که نیاز دارید پروژتون سرو شود. فیلد های باقیمانده را رها کنید تا مقدار پیشفرض تنظیم گردد.در انتها CREATE را بزنید تا محیط مجازی ساخته شود.
برای وارد شدن به محیط مجازی در بالای صفحهی برنامه یک دستور برای کپی کردن وجود دارد، که میتوانید با کلیک کردن بر آن کپی کنید، سپس وارد صفحه اول کنترل پنل خود شده و در شاخهی Advance وارد بخش Terminal بشوید و دستور کپی شده را وارد کنید.
نصب پکیج های مورد نیاز پروژه در محیط مجازی ساخته شده
در ادامهی آموزش دیپلوی جنگو بر هاست cpanel برای این کار دو راهکار وجود دارد:
- از طریق رابط Python App
- از طریق Terminal
در راه اول کافیست آدرس فایل requirement های پروژه خودتان را نسبت به root پروژه در بخش Configuration files وارد کنید.
پس از اضافه کردن فایل بر Run Pip Install کلیک کنید و منتظر بمانید تا نصب به پایان برسد.
برای راه دوم کافیست در Terminal وارد محیط مجازی شده و به صورت عادی دستور نصب را اجرا کنید.
تنظیم کردن تنظیمات مربوط به ارتباط وبسرور و جنگو
وارد فایل منیجر شوید سپس فایل passenger_wsgi.py که در پوشه پرژتون ساخته شده به صورت زیر ویرایش کنید.from project_name.wsgi import application
توجه کنید که به جای project_name نام پروژهی خودتون را وارد کنید.
تنظیم کردن پروژه برای استفادهی نهایی
ابتدا تنظیمات مربوط به دیتابیس را اعمال کنید و دیتابیس خود را از طریق پنل بسازید و مشخصات آن را در فایل setting.py اعمال کنید سپس از طریق Terminal وارد محیط مجازی خود شده و migration ها را انجام دهید.
در مرحلهی بعد در فایل setting.py آدرس سایت خود را در ALLOWED_HOSTS اضافه کنید.
پس از طی کردن آموزش دیپلوی جنگو بر هاست اشتراکی سی پنل حالا وبسایت شما آماده است.
در صورتی که حالت دیباگ سایت خود را غیر فعال کرده باشید وظیفه سرو کردن فایل های استاتیک بر عهده وبسرور محول میشود از این رو باید استاتیک های پروژه اعم از استاتیک های admin را جمع کنید و به public_html هاست خود منتقل کنید. برای اینکار ابتدا متغیر های زیر را در setting.py تنظیم کنید.STATIC_ROOT = '/home/username/public_html/static'
MEDIA_ROOT = '/home/username/public_html/media'
توجه کنید که آدرس های بالا را نسبت به آدرس public_html و آدرس static , media خودتان تغییر دهید.
سپس وارد ترمینال و محیط مجازی شوید و دستور زیر را وارد کنید.python manage.py collectstatic
اگر تغییری در کد خود ایجاد کردید نیاز دارید تا Python App ساخته شده را ریاستارت کنید. برای این کار وارد پنل خود شده سپس بخش Setup Python App و برنامهی مورد نظر را ریاستارت کنید.
در این صورت یک تیکت برای مرکز پشتیبانی بستلا ایجاد کنید تا در اسرع وقت به صورت رایگان مشکل شما توسط متخصصان بستلا حل شود.
گزینه ترمینال وجود نداره داخل هاست مستر ریسلر آلمان؟
سلام وقت بخیر
این امکان ارائه میشه در سرویس شما لطفا در بخش فنی تیکت بازکنید
سلام من پایتون ۳.۱۰ هندل کردم پروژه ام رو ولی داخل سی پنل آخرین ورژن ۳.۸ میباشد و پروژه من مایگرت نمیشه آیا این میتونه علتش باشه اگر بله،بنابراین چه راهکاری پیشنهاد میکنید یکی از خطاهای ترمینال من مربوط به منطقه زمانی میباشد
درود تیکت باز کنید راهنماییتون کنیم