Bài viết này sẽ hướng dẫn chi tiết cài đặt và cấu hình các chương trình Apache, Python và PostgreSQL để đảm bảo hoạt động của dự án Django trên MS Windows. Django đã bao gồm một máy chủ phát triển nhẹ để kiểm tra mã cục bộ, nhưng các tác vụ liên quan đến sản xuất yêu cầu một máy chủ web mạnh mẽ và an toàn hơn. Chúng tôi sẽ thiết lập mod_wsgi để tương tác với dự án của chúng tôi và thiết lập Apache như một cổng vào thế giới bên ngoài.
Cần lưu ý rằng việc cài đặt và cấu hình sẽ được thực hiện trong MS Windows 10 với 32 bit. Ngoài ra, phản ứng 32 bit sẽ phổ biến và sẽ hoạt động trên kiến trúc 64 bit. Nếu bạn cần cài đặt 64 bit, hãy lặp lại các bước tương tự đối với bản phân phối phần mềm 64 bit, chuỗi hành động sẽ giống hệt nhau.
Là một dự án Django, chúng tôi sẽ sử dụng chương trình Severcart. Nó được thiết kế để quản lý chuyển động của hộp mực, kế toán thiết bị in và các hợp đồng cung cấp và dịch vụ. Tất cả các chương trình và mô-đun sẽ được cài đặt trong thư mục C:severcart. Vị trí không quan trọng.
Python
Bước đầu tiên là tải xuống và cài đặt Python từ trang web Python. Chúng tôi chọn Windows làm hệ điều hành và phiên bản 32 bit. Tại thời điểm viết bài, phiên bản hiện tại là 3.9.0rc2.
Sau khi tải xuống tệp cài đặt, nhấp chuột phải vào tệp cài đặt và chọn "Chạy với tư cách quản trị viên". Bạn sẽ thấy màn hình bên dưới
Đặt các hộp kiểm bên cạnh các hộp kiểm "Cài đặt trình khởi chạy để thêm người dùng (được khuyến nghị)" và "Thêm Python 3.9 vào PATH" và nhấp vào "Tùy chỉnh cài đặt".
Đặt các hộp kiểm đối với "pip", "py launcher", "cho tất cả người dùng (yêu cầu độ cao)" và nhấp vào "Tiếp theo".
Chọn tất cả các trường nhập như trong hình trên và nhấp vào "Cài đặt".
Để xác minh rằng quá trình cài đặt đã thành công, hãy mở cmd và gõ python. Nếu quá trình cài đặt thành công, bạn sẽ thấy một lời nhắc tương tự như bên dưới.
Đang cài đặt mod_wsgi
Tải xuống gói đã biên dịch từ mod_wsgi từ trang web
Cài đặt mô-đun bằng trình quản lý gói pip tiêu chuẩn trong cmd hoặc powershell:
pip install -U mod_wsgi-4.7.1-cp39-cp39-win32.whl
Apache
Tải xuống bộ phân phối từ trang web
Phiên bản mới nhất của máy chủ Web là Apache 2.4.46 win32 VS16. Ngoài ra, để chương trình hoạt động, bạn cần cài đặt sẵn gói "Visual C ++ Redistributable for Visual Studio 2019 x86".
Chúng tôi giải nén bản phân phối Apache vào thư mục C: severcartApache24, sau đó thay đổi dòng có số 37 thành của chúng tôi
Define SRVROOT "C:/severcart/Apache24"
Ta kiểm tra hoạt động của Apache bằng cách thực hiện trên dòng lệnh
C:/severcart/Apache24/bin> httpd.exe
Kết quả là, bạn sẽ thấy trong trình duyệt tại
Cài đặt dịch vụ Apache, để thực hiện việc này, hãy thực hiện hướng dẫn sau trên dòng lệnh với tư cách Quản trị viên:
C:severcartApache24bin>httpd.exe -k install -n "Apache24"
Tiếp theo, chúng tôi sẽ kết nối mô-đun mod_wsgi với Apache. Để làm điều này, thực hiện hướng dẫn trên dòng lệnh
C:Windowssystem32>mod_wsgi-express module-config
Điều này sẽ in các dòng sau thành đầu ra tiêu chuẩn:
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"
Tạo một tệp C:severcartApache24confextrahttpd-wsgi.conf và sao chép-dán các dòng được in ở trên vào đó.
Chúng tôi kết nối cấu hình mới với tệp httpd.conf chính
Bao gồm conf/extra/httpd-wsgi.conf
Lưu thay đổi, khởi động lại dịch vụ Apache
Net stop Apache24
Net start Apache24
PostgreSQL
Cài đặt PostgreSQL được lấy từ trang web
Các bước cài đặt đã được trình bày ở trên và không cần bình luận. Cài đặt cực kỳ đơn giản.
Chúng tôi tạo một cơ sở dữ liệu trong postgres, nơi các cấu trúc dữ liệu của dự án Django sau đó sẽ được lưu trữ
C:severcartpostgresqlbin>psql -h 127.0.0.1 -U postgres -W
CREATE DATABASE severcart WITH ENCODING='UTF8' OWNER=postgres CONNECTION LIMIT=-1 template=template0;
DB đã được tạo. Bây giờ hãy triển khai dự án Django.
Cài đặt ứng dụng web
Để thực hiện việc này, hãy tải xuống kho lưu trữ zip từ trang web
Chúng tôi thực hiện các thay đổi đối với tệp cấu hình chính C: severcartappconfsettings_prod.py để chỉ định chi tiết kết nối cơ sở dữ liệu
Từ điển Python DATABASES chứa chi tiết kết nối cơ sở dữ liệu. Đọc thêm về thiết lập ở đây.
Cài đặt gói tính năng Python để chạy ứng dụng bên trong dự án Django
C:severcartapptkinstaller>python install.py
Trong quá trình hoạt động của tập lệnh, cơ sở dữ liệu sẽ được khởi tạo với các bảng, cấu trúc, chỉ mục, v.v. và nó sẽ được đề xuất tạo một người dùng thay mặt họ thực hiện công việc trong chương trình.
Chúng tôi kết nối ứng dụng Django với máy chủ Apache, để làm điều này, chúng tôi bổ sung tệp cấu hình
httpd-wsgi.conf với văn bản sau
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>
Khởi động lại dịch vụ Apache và kiểm tra ứng dụng
Đó là tất cả. Cảm ơn bạn đã đọc.
Trong bài viết tiếp theo, chúng ta sẽ tạo một kho lưu trữ tự giải nén cài đặt trong InnoSetup để triển khai nhanh một dự án Django trên máy tính của khách hàng. Đối với những người muốn lặp lại tất cả các bước trên
Nguồn: www.habr.com