Khi chạy để test hoặc dev ta có thể chạy file python từ command. Web sẽ dc chạy lên localhost như bình thương. Nhưng khi chạy lên server thật nên dùng apache để có thể có nhiều config hơn
Chạy web python với apache2 và wgsi
- Cài apache2 trên server
- Cài thêm gói hỗ trợ apache2-dev
1sudo apt install apache2-dev - Cài thêm gói hỗ trợ python (ví dụ ở đây dùng python3)
1sudo apt-get install build-essential libssl-dev libffi-dev python3-dev - Cài mod_wgsi
1pip3 install mod_wsgi - Tạo file config cho web. Ví dụ /etc/apache2/sites-available/flask.conf với nội dung như sau
12345678910111213LoadModule wsgi_module "/usr/lib/apache2/modules/mod_wsgi-py35.cpython-35m-x86_64-linux-gnu.so"WSGIPythonHome "/usr"<VirtualHost *:80>WSGIScriptAlias / "/var/www/flask_project/wsgi.py"ServerName flask.tkServerAlias www.flask.tk<Directory /var/www/flask_project><Files wsgi.py>Require all granted</Files></Directory></VirtualHost>WSGIPythonPath /var/www/flask_project
2 dòng đầu tiên là kết quả của lệnh.
ServerName và serveralias là tên miền của web (tùy ý)
Thư mục chứa code web python là /var/www/flask_project - Tạo file wsgi.py bên trong thư mục /var/www/flask_project
1from __init__ import app as application
Trong thư mục /var/www/flask_project có file __init__.py là file route đầu tiên của web python - Map domain flask.tk với ip của server (hoặc sửa file host để test)
Hướng dẫn chạy nhiều web trên 1 server
Bây giờ bạn có thể access vào domain flask.tk để chạy web python