در این مقاله راه اندازی Python Django در cPanel را آموزش خواهیم داد. چنانچه هنوز با نرمافزار سیپنل آشنایی ندارید، میتوانید مقالهی سیپنل چیست را مطالعه کنید.
جنگو یکی از معروفترین چارچوبهای پایتون در جهان است و طرفداران زیادی هم دارد.
در مقالات قبل نحوهی نصب جنگو بر روی اوبونتو ۱۸.۰۴ را آموزش دادیم. حال برای راهاندازی این چارچوب پایتون در سیپنل کافی است مراحل زیر را انجام دهید.
برای آپلود فایلهای خود میتوانید از FTP client یا File Manager سیپنل استفاده کنید. از آپلود آنها در فولدر عمومی public_html خودداری کنید. این کار خطرات امنیتی را به همراه دارد و ممکن است منابع کد و دیتاهای سایت شمارا در معرض خطر قرار دهد؛ بهخصوص اگر از یک دیتابیس SQLite استفاده میکند.
وبسایت جنگو شما میتواند در هرجایی از دایرکتوری /home/ قرار بگیرد. دایرکتور home سایت شما در قسمت سمت چپ صفحه اصلی حساب کاربری سیپنل شما قرار دارد:
پیشنهاد میکنیم که در دایرکتوری اصلی خود یک زیرپوشه ساخته و نام آن را بهدلخواه انتخاب کنید. این زیرپوشه در حقیقت فولدر روت برنامه شماست.
این مرحله به تمام مواردی که در وب سرور در مورد سایت جنگو شما لازم است، نیاز دارد. بنابراین آن را تنظیم کرده و پیکربندی کنید.
در صفحهی اصلی سیپنل قسمت “SOFTWARE” را پیدا کنید و بر روی گزینهی Setup Python App کلیک کنید:
اکنون میتوانید صفحهای مانند تصویر زیر را مشاهده کنید:
ورژن پایتون خود را انتخاب کنید. توجه داشته باشید که حتماً ورژن فعلی پایتون خود را که برای سایت از آن استفاده میکنید را انتخاب کنید. ورژنهای پایینتر را بههیچ عنوان انتخاب نکنید.
در قسمت App Directory نام فولدر روت پروژهی خود را که در قبل ساختید وارد کنید.
در قسمت App URI باید آدرس URL صفحهی اصلی وبسایت جنگوی خود را وارد کنید. چنانچه وبسایت جنگوی شما زیرشاخهای از یک سایت دیگر است، در این حالت اگر یک سایت دیگر با نام مثلاً mysindad.com دارید و میخواهید جنگو را روی آن پیاده کنید، باید در URL آدرس mysindad.com/djangoSite را وارد کنید.
در چنین حالتی اطمینان حاصل کنید که فایل urls.py شما دارای مقادیر مناسب است.
همچنین توجه داشته باشید که این مقدار باید مربوط به دایرکتوری وب روت و یک زیردایرکتوری از www آن یا www/django باشد.
اگر www/django در دایرکتوری www شما وجود نداشته باشد، توسط سیپنل ایجاد خواهد شد. سیپنل همچنین یک فایل htaccess. همراه با دیتای موردنیاز برای وبسایت جنگو ایجاد خواهد کرد.
بههیچعنوان به قسمت فایلهای htaccess. دست نزنید، چون این فایلها برنامه جنگو را مدیریت میکنند. برای این قسمت ما django/ را انتخاب کردهایم:
سپس بر روی گزینهی Setup کلیک کنید.
مرحله قبلی یک ورودی مانند تصویر زیر ایجاد کرده است:
در اینجا WGI file location نام فایل .wsgi شماست. این گزینه را تغییر ندهید.
در قسمت بعدی نحوهی پیکربندی WSGI را توضیح خواهیم داد.
ما باید خود جنگو را هم بهعنوان یک ماژول نصب کنیم. همانگونه که در تصویر زیر مشاهده میکنید، محتویات موجود در قسمت Command for entering to virtual environment را در محیط SSH کپی کنید.
سپس در محیط SSH فرمان pip install django را تایپ کنید. پس از مشاهدهی نصب موفقیتآمیز، دستور cd myproject/ را وارد کنید.
اکنون باید فرمان django-admin startproject myproject . را صادر کنید. حال عبارت ls را وارد کنید:
اکنون میتوانید وارد File Manager سیپنل خود شده و روی گزینهی myproject کلیک کنید. فایل passenger_wsgi.py را انتخاب کرده و سپس بر روی Edit کلیک کنید:
در صفحهی ظاهر شده تمام مقادیر را انتخاب کرده و پاک کنید. سپس عبارت from myproject.wsgi import application را تایپ کنید و بر روی Save Changes کلیک کنید:
کمی صبر کنید تا تغییرات اعمال شوند. سپس صفحه را بسته و وارد فایل myproject شوید. پوشهی settings.py را انتخاب کرده و سپس بر روی Edit کلیک کنید:
پنجرهای برای شما باز خواهد شد. در این پنجره و در قسمتهای نشان داده شده، دامنههای خود را با و بدون www تایپ کنید:
به پایین صفحه بروید، عبارات زیر را تایپ کرده و سپس بر روی گزینهی Save Changes کلیک کنید:
STATIC_URL = ‘ /static/ ‘
MEDIA_URL = ‘ media’
STATICFILES_DIRS = [ BASE_DIR+” /assets” , ]
STATIC_ROOT = ‘ /home/test/public_html/static ‘
MEDIA_ROOT = ‘/home/test/public_html/media ‘
توجه داشته باشید که هرکدام از این عبارات را در یک خط جداگانه باید وارد کنید. بهجای کلمه test هم نام دامنهی خود را جایگزین کنید.
پس از آنکه تغییرات اعمال شد، مجدداً وارد File Manager سیپنل خود شوید و بر روی UP One Level کلیک کنید:
سپس بر روی +Folder کلیک کنید تا یک فایل جدید ایجاد شود. نام فایل را assets بگذارید و بر روی Create New Folder کلیک کنید:
سپس در قسمت سمت چپ صفحه فولدر Public_html را باز کنید. بازهم بر روی +Folder کلیک کنید. نام فایل را media بگذارید و بر روی Create New Folder کلیک کنید تا فایل ایجاد شود:
مجدداً وارد محیط SSH شوید. عبارت manage.py collectstatic/. را وارد کنید:
مجدداً وارد File Manager سیپنل خود شده و بر روی Reload کلیک کنید تا فولدر static اضافه شود:
به محیط راهاندازی پایتون در سیپنل برگردید و بر روی گزینهی Restart کلیک کنید:
در انتها وارد دامنهی خود شوید و URL خود را Refresh کنید. چنانچه مراحل بالا را بهدرستی انجام داده باشید، Python Django در سیپنل شما راهاندازی شده است.
سینداد یعنی هدیهی سیمرغ، یا فرزند سیمرغ؛ به عبارتی یعنی خود سیمرغ، با همه ی شگفتی هایش، اما جوانتر و سرزنده تر. و این چیزی است که ما سعی می کنیم در سینداد باشیم. از سال ۱۳۸۵ دانش مان را به صورت خدماتی در حوزه ی هاستینگ، شبکه و تولید نرم افزار در اختیار مشتریان مان قرار داده ایم و به این افتخار می کنیم که تک تک آنها تا به امروز همراه ما مانده اند. باور داریم که سینداد صرفاً یک شرکت نیست، بلکه نوعی باور است به ارائه ی شگفت انگیز از هر چیز.