Cách chạy Python Scripts với Apache và mod_wsgi trên Ubuntu 20.04

theanh

Administrator
Nhân viên
mod_wsgi là một mô-đun Apache cung cấp giao diện để lưu trữ các ứng dụng web dựa trên Python trên Apache. Nó phù hợp để sử dụng trong việc lưu trữ các trang web sản xuất hiệu suất cao, cũng như các trang web cá nhân tự quản lý trung bình của bạn chạy trên các dịch vụ lưu trữ web. Bạn có thể dễ dàng triển khai các ứng dụng được viết bằng các khuôn khổ và công cụ như Django, Web.py, Werkzug, Chery.py, TurboGears và Flask bằng cách sử dụng mod_wsgi.

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách cài đặt và thiết lập mod_wsgi với máy chủ Apache trên máy chủ Ubuntu 20.04.

Điều kiện tiên quyết​

  • Máy chủ chạy Ubuntu 20.04.
  • Mật khẩu gốc được cấu hình cho máy chủ.

Bắt đầu​

Trước bắt đầu, bạn nên cập nhật hệ thống của mình lên phiên bản mới nhất. Bạn có thể cập nhật hệ thống bằng lệnh sau:
Mã:
apt-get update -y
apt-get upgrade -y
Sau khi cập nhật hệ thống, hãy khởi động lại hệ thống để triển khai các thay đổi.

Cài đặt Python​

Theo mặc định, Python được cài đặt sẵn trong máy chủ Ubuntu 20.04. Nếu chưa cài đặt, bạn có thể cài đặt bằng lệnh sau:
Mã:
apt-get install python3 libexpat1 -y
Sau khi quá trình cài đặt hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cài đặt Apache và mod_wsgi​

Tiếp theo, bạn sẽ cần cài đặt máy chủ web Apache và mô-đun Python mod_wsgi trên hệ thống của mình. Bạn có thể cài đặt chúng bằng cách chạy lệnh sau:
Mã:
apt-get install apache2 apache2-utils ssl-cert libapache2-mod-wsgi -y
Sau khi tất cả các gói được cài đặt, bạn có thể tiến hành bước tiếp theo.

Cấu hình Apache cho mod_wsgi​

Tiếp theo, bạn cần tạo một tập lệnh Python mới bên trong thư mục gốc web mặc định của Apache và phục vụ nó thông qua mô-đun Apache mod_wsgi.

Bạn có thể tạo nó bằng lệnh sau:
Mã:
nano /var/www/html/wsgy.py
Thêm các dòng sau:
Mã:
def application(environ,start_response): status = '200 OK' html = 'html>\n' \ '\n' \ '\n' \ 'Chào mừng đến với Trang kiểm tra mod_wsgi\n' \ '\n' \ '\n' \ '\n' response_header = [('Content-type','text/html')] start_response(status,response_header) return [html]
Lưu và đóng tệp. Sau đó, thay đổi quyền sở hữu tệp thành www-data bằng lệnh sau:
Mã:
chown www-data:www-data /var/www/html/wsgy.py
Tiếp theo, tạo tệp cấu hình máy chủ ảo Apache để phục vụ tệp này qua giao thức HTTP.
Mã:
nano /etc/apache2/conf-available/wsgi.conf
Thêm dòng sau:
Mã:
WSGIScriptAlias /wsgi /var/www/html/wsgy.py
Lưu và đóng tệp. Sau đó, bật cấu hình mod-wsgi và khởi động lại dịch vụ Apache bằng lệnh sau:
Mã:
a2enconf wsgi
systemctl restart apache2

Kiểm tra mod-wsgi​

Tại thời điểm này, máy chủ web Apache được cấu hình để phục vụ tệp Python của bạn qua giao thức HTTP.

Để kiểm tra, hãy mở trình duyệt web của bạn và nhập URL http://your-server-ip/wsgi. Bạn sẽ thấy trang kiểm tra mod-wsgi trên màn hình sau:


Kết luận​

Xin chúc mừng! Bạn đã triển khai thành công tập lệnh Python trên máy chủ web Apache bằng mô-đun mod_wsgi trên máy chủ Ubuntu 20.04. Tôi hy vọng bây giờ bạn có thể dễ dàng triển khai bất kỳ ứng dụng Python nào với Apache và mod_wsgi trong môi trường sản xuất.
 
Back
Bên trên