Skip to content

Instantly share code, notes, and snippets.

@herotux
Last active January 25, 2023 13:29
Show Gist options
  • Save herotux/021de2e4e3d37a7b1b9c7f246a67555d to your computer and use it in GitHub Desktop.
Save herotux/021de2e4e3d37a7b1b9c7f246a67555d to your computer and use it in GitHub Desktop.
راه اندازی وب سرور پایتون و جنگو روی vps

راه اندازی وب سرور پایتون و جنگو روی vps

این یه مقاله کامل نیست و احتمالا پر اشتباه باشه پس اگه میبینید جایی ایراد داره اطلاع بدید ممنونم.

سیستم عامل گنو/لینوکس اوبونتو

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

چون تست نکردم خودم ممکنه غلط داشته باشه توش پس شما اگه جایی دیدید مشکل داره اطلاع بدید اصلاحش کنم:

یه ssh بزنین و وارد روت سرور بشید

دستورات زیر را اجرا کنید:

sudo apt install build-essential
sudo apt install libssl-dev
sudo apt install mysql-server
sudo apt install python3-dev libmysqlclient-dev
sudo apt install nginx

با فرض نصب موفق تمامی موارد فوق نوبت به تنظیم کردن سرویس nginx میرسد

sudo rm /etc/nginx/sites-available/default

با استفاده از دستور nano یک فایل متنی ایجاد مینماییم.

sudo nano /etc/nginx/sites-available/default

حال محتوای زیر را در آن وارد مینماییم.

server {
listen 80;
server_name 127.0.0.1;
 
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:6060;
}
}

برای ذخیره کردن و خارج شدن از فضای nano از کلید های ctrl+x استفاده می نماییم بعد کلید y و درنهایت Enter مینماییم.

برای اطمینان از صحت تنظیمات وارد شده از دستور زیر اسفاده میکنیم.

sudo nginx –t
sudo service nginx restart

خوب برای تست nginx آیپی سرور رو در مرورگر وارد نمایید، باید با ارور ۵۰۲ بد گیت وی روبرو شوید.

خوب مرحله ی بعدی نصب نسخه ی مورد نظر پایتون است (در زمان نگارش این مقاله آخرین آپدیت پایتون نسخه یPython-3.4.4.tgz میباشد).

pip install django

حالا که جنگو رو هم نصب کردیم به uwsqi نیاز هست که بصورت توکار داخل بسته جنگو موجود است.

تا اونجایی که من میدونم وقتی یه پروژه جنگو ایجاد میکنیم خودش uwsqi و دیتابیس رو ایجاد میکنه اگه اشتباه نکرده باشم پس نیازی به طول و تفسیر در این باره نیست مگر اینکه نیاز به ایجاد پایگاه داده از نوع دیگه ای بجای پیشفرض جنگو که sqlite اگه اشتباه نکنم داشته باشیم.

خواهشا اگه جایی میبینید اشتباه هست یا چیزی از قلم افتاده تذکر بدید ممنون.

منبع!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment