vi

Python VPS Hosting: Django và Flask Deployment

Python là ngôn ngữ lập trình hàng đầu cho web backend, machine learning và data science. Hosting Python trên shared hosting thường gặp nhiều hạn chế về phiên bản Python, thư viện hệ thống và cấu hình WSGI. VPS offshore của AnubizHost cho phép bạn chạy bất kỳ phiên bản Python nào, cài đặt mọi dependency và cấu hình Gunicorn/uWSGI theo nhu cầu chính xác của dự án.

Need this done for your project?

We implement, you ship. Async, documented, done in days.

Start a Brief

Cài Đặt Python và Virtual Environment

Cài đặt Python 3 và các công cụ cần thiết:

apt update
apt install -y python3 python3-pip python3-venv python3-dev
python3 --version

Tạo virtual environment cho dự án:

mkdir -p /var/www/myproject
cd /var/www/myproject
python3 -m venv venv
source venv/bin/activate
pip install --upgrade pip

Cài đặt dependencies từ requirements file:

pip install -r requirements.txt

Virtual environment đảm bảo các dự án Python khác nhau trên cùng server không xung đột dependencies.

Cấu Hình Gunicorn cho Django/Flask

Gunicorn là WSGI server chuẩn cho Python web applications. Cài đặt và test:

pip install gunicorn
# Test Django
gunicorn --workers 3 --bind 127.0.0.1:8000 myproject.wsgi:application
# Test Flask
gunicorn --workers 3 --bind 127.0.0.1:8000 app:app

Tạo systemd service để Gunicorn tự khởi động:

nano /etc/systemd/system/gunicorn.service
[Unit]
Description=Gunicorn daemon for Django/Flask app
After=network.target

[Service]
User=www-data
WorkingDirectory=/var/www/myproject
ExecStart=/var/www/myproject/venv/bin/gunicorn     --workers 3     --bind 127.0.0.1:8000     myproject.wsgi:application

[Install]
WantedBy=multi-user.target
systemctl enable gunicorn
systemctl start gunicorn

Nginx Reverse Proxy cho Python App

Cấu hình Nginx để serve static files và proxy requests tới Gunicorn:

nano /etc/nginx/sites-available/myproject
server {
    listen 80;
    server_name yourdomain.com;

    location /static/ {
        alias /var/www/myproject/static/;
    }

    location /media/ {
        alias /var/www/myproject/media/;
    }

    location / {
        proxy_pass http://127.0.0.1:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Nginx serve static/media files trực tiếp (hiệu suất cao hơn), còn các request động được forward tới Gunicorn. Activate và reload:

ln -s /etc/nginx/sites-available/myproject /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx

Biến Môi Trường và Security Settings

Không bao giờ hardcode secrets trong code. Sử dụng file .env:

pip install python-decouple
nano /var/www/myproject/.env
SECRET_KEY=your-very-long-secret-key-here
DEBUG=False
ALLOWED_HOSTS=yourdomain.com,www.yourdomain.com
DATABASE_URL=postgres://user:password@localhost/dbname

Trong settings.py (Django):

from decouple import config
SECRET_KEY = config('SECRET_KEY')
DEBUG = config('DEBUG', default=False, cast=bool)

Giới hạn quyền file .env:

chmod 600 /var/www/myproject/.env
chown www-data:www-data /var/www/myproject/.env

VPS offshore của AnubizHost ở Iceland không chịu áp lực các yêu cầu disclosure dữ liệu theo CLOUD Act của Mỹ, đảm bảo dữ liệu dự án của bạn được bảo vệ tối đa.

Why Anubiz Host

100% async — no calls, no meetings
Delivered in days, not weeks
Full documentation included
Production-grade from day one
Security-first approach
Post-delivery support included

Ready to get started?

Skip the research. Tell us what you need, and we'll scope it, implement it, and hand it back — fully documented and production-ready.

Anubiz Chat AI

Online