
این مقاله دستورالعملهای دقیقی در مورد نصب و پیکربندی آپاچی، پایتون و PostgreSQL برای اطمینان از عملکرد یک پروژه Django در سیستم عامل مایکروسافت ارائه میدهد. Windowsجنگو از قبل شامل یک سرور توسعه ساده برای تست کد محلی است، اما وظایف مربوط به تولید به یک سرور وب امنتر و قدرتمندتر نیاز دارند. ما mod_wsgi را برای ارتباط با پروژه خود پیکربندی خواهیم کرد و آپاچی را به عنوان دروازهای به دنیای خارج راهاندازی خواهیم کرد.
شایان ذکر است که نصب و پیکربندی در سیستم عامل MS انجام خواهد شد. Windows 10 با معماری ۳۲ بیتی. نسخه ۳۲ بیتی نیز جهانی خواهد بود و روی معماری ۶۴ بیتی کار خواهد کرد. اگر به نصب ۶۴ بیتی نیاز دارید، همین مراحل را برای توزیعهای نرمافزاری ۶۴ بیتی تکرار کنید؛ توالی اقدامات یکسان خواهد بود.
ما از برنامه Severcart به عنوان پروژه جنگو استفاده خواهیم کرد. این برای مدیریت حرکت کارتریج ها، حسابداری تجهیزات چاپ و قراردادهای تامین و خدمات طراحی شده است. همه برنامه ها و ماژول ها در دایرکتوری C:severcart نصب می شوند. مکان مهم نیست.
پــایتــون
اولین قدم دانلود و نصب پایتون از وبسایت پایتون است. انتخاب کنید Windows به عنوان سیستم عامل و نسخه ۳۲ بیتی. در زمان نگارش این مطلب، نسخه فعلی ۳.۹.۰rc۲ است.
پس از دانلود فایل نصبی، روی فایل نصبی کلیک راست کرده و Run as administrator را انتخاب کنید. باید صفحه زیر را ببینید

کادرهای کنار «Install launcher for add user (توصیه شده)» و «Add Python 3.9 to PATH» را علامت بزنید و روی «Customize install» کلیک کنید.

کادرهای کنار «pip»، «py launcher»، «for all users (به ارتفاع نیاز دارد)» را علامت بزنید و روی «Next» کلیک کنید.

تمام فیلدهای ورودی را مانند تصویر بالا انتخاب کنید و روی "نصب" کلیک کنید.

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

mod_wsgi را نصب کنید
بسته کامپایل شده با mod_wsgi را از سایت دانلود کنید
این ماژول به عنوان واسطهای بین سرور آپاچی و پروژه جنگو عمل میکند. آخرین بسته mod_wsgi-4.7.1-cp39-cp39-win32.whl نام خواهد داشت. لطفاً توجه داشته باشید که این بسته برای سیستم عامل ۳۲ بیتی کامپایل شده است. Windows سیپایتون نسخه ۳.۹. همچنین شایان ذکر است که نصب بدیهی ماژول pip install mod_wsgi به احتمال زیاد با شکست مواجه خواهد شد، زیرا فرآیند نصب به کامپایلر ویژوال استودیو سیپلاسپلاس نیاز دارد. نصب کل کامپایلر فقط برای یک بسته پایتون ... Windows ما آن را نامناسب میدانیم.
ماژول را با استفاده از مدیر بسته استاندارد pip در cmd یا powershell نصب کنید:
pip install -U mod_wsgi-4.7.1-cp39-cp39-win32.whl

آپاچی
توزیع را از سایت دانلود کنید .
آخرین نسخه وب سرور Apache 2.4.46 win32 VS16 است. همچنین برای اینکه برنامه کار کند، به یک بسته از پیش نصب شده «Visual C++ Redistributable for Visual Studio 2019 x86» نیاز دارید.
توزیع آپاچی را در دایرکتوری C:severcartApache24 باز کنید، سپس خط شماره 37 را به خط خود تغییر دهید.
Define SRVROOT "C:/severcart/Apache24"
با اجرای خط فرمان عملکرد آپاچی را بررسی می کنیم
C:/severcart/Apache24/bin> httpd.exe
در نتیجه، آنها باید در مرورگر در مشاهده شوند خط "این کار می کند!"

ما سرویس آپاچی را نصب می کنیم؛ برای انجام این کار، دستورالعمل های زیر را در خط فرمان به عنوان Administrator اجرا کنید:
C:severcartApache24bin>httpd.exe -k install -n "Apache24"
بعد، اجازه دهید ماژول mod_wsgi را به آپاچی متصل کنیم. برای انجام این کار، دستورالعمل را در خط فرمان اجرا کنید
C:Windowssystem32>mod_wsgi-express module-config
در نتیجه، خطوط زیر در خروجی استاندارد چاپ می شود:
LoadFile "c:/severcart/python/python39.dll"
LoadModule wsgi_module "c:/severcart/python/lib/site-packages/mod_wsgi/server/mod_wsgi.cp39-win32.pyd"
WSGIPythonHome "c:/severcart/python"
یک فایل C:severcartApache24confextrahttpd-wsgi.conf ایجاد کنید و خطوط چاپ شده را در بالا کپی کنید.
پیکربندی جدید را به فایل اصلی httpd.conf وصل می کنیم
شامل conf/extra/httpd-wsgi.conf
تغییرات را ذخیره کنید، خدمات آپاچی را مجددا راه اندازی کنید
Net stop Apache24
Net start Apache24
PostgreSQL و
PostgreSQL را که از سایت گرفته شده است نصب کنید . نسخه فعلی محصول نرم افزاری 12 است. مزایای توزیع روسی نسبت به نسخه متعارف در همان وب سایت ارائه شده است.










مراحل نصب در بالا ارائه شده است و نیازی به نظر ندارد. نصب بسیار ساده است.
ما یک پایگاه داده در postgres ایجاد می کنیم، جایی که ساختار داده های پروژه جنگو در آن ذخیره می شود
C:severcartpostgresqlbin>psql -h 127.0.0.1 -U postgres -W
CREATE DATABASE severcart WITH ENCODING='UTF8' OWNER=postgres CONNECTION LIMIT=-1 template=template0;

پایگاه داده ایجاد شده است. اکنون پروژه جنگو را مستقر می کنیم.
نصب اپلیکیشن تحت وب
برای انجام این کار، آرشیو فشرده را از سایت دانلود کنید و آن را در دایرکتوری C:severcartapp باز کنید

ما تغییراتی را در فایل پیکربندی اصلی C:severcartappconfsettings_prod.py ایجاد می کنیم تا جزئیات اتصال به پایگاه داده را مشخص کنیم.

پایگاه داده دیکشنری پایتون حاوی جزئیاتی برای اتصال به پایگاه داده است. درباره راه اندازی اینجا بیشتر بخوانید
نصب بسته های پایتون با اهمیت برای اجرای برنامه های کاربردی در داخل پروژه جنگو
C:severcartapptkinstaller>python install.py

در حالی که اسکریپت در حال اجرا است، پایگاه داده با جداول، ساختارها، ایندکس ها و غیره مقداردهی اولیه می شود و از شما خواسته می شود کاربری ایجاد کنید که کار از طرف او در برنامه انجام شود.
ما برنامه جنگو را به سرور آپاچی متصل می کنیم، برای این کار فایل پیکربندی را اضافه می کنیم
httpd-wsgi.conf با متن زیر
Alias /static "c:/severcart/app/static"
Alias /media "c:/severcart/app/media"
<Directory "c:/severcart/app/static">
# for Apache 2.4
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<Directory "c:/severcart/app/media">
# for Apache 2.4
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
WSGIScriptAlias / "c:/severcart/app/conf/wsgi_prod.py"
WSGIPythonPath "c:/severcart/python/"
<Directory "c:/severcart/app/conf/">
<Files wsgi_prod.py>
Require all granted
</Files>
</Directory>
سرویس Apache را مجددا راه اندازی کنید و بررسی کنید که برنامه کار می کند

همین. ممنون که خواندید.
در مقاله بعدی ما یک بایگانی خود استخراج کننده نصب در InnoSetup برای استقرار سریع پروژه جنگو در رایانه مشتری ایجاد خواهیم کرد. برای کسانی که می خواهند تمام مراحل را تکرار کنند همه توزیع های استفاده شده بارگذاری می شوند.
منبع: www.habr.com
