溫馨提示×

Ubuntu Python如何配置Web服務器

小樊
55
2025-05-22 00:49:31
欄目: 云計算

在Ubuntu上配置Python Web服務器,你可以選擇多種Web框架,如Flask、Django等。以下是使用Flask和Gunicorn作為WSGI服務器來配置一個簡單的Python Web應用程序的步驟:

  1. 安裝Python和pip: Ubuntu系統通常已經預裝了Python和pip。你可以通過運行以下命令來檢查它們的版本:

    python3 --version
    pip3 --version
    

    如果沒有安裝,可以使用以下命令安裝:

    sudo apt update
    sudo apt install python3 python3-pip
    
  2. 安裝Flask: 使用pip安裝Flask:

    pip3 install Flask
    
  3. 創建Flask應用: 創建一個新的Python文件,例如app.py,并編寫一個簡單的Flask應用:

    from flask import Flask
    app = Flask(__name__)
    
    @app.route('/')
    def hello_world():
        return 'Hello, World!'
    
    if __name__ == '__main__':
        app.run(debug=True)
    
  4. 安裝Gunicorn: Gunicorn是一個WSGI HTTP服務器,適合部署Python Web應用程序。使用pip安裝Gunicorn:

    pip3 install gunicorn
    
  5. 運行Flask應用: 在終端中,導航到包含app.py的目錄,并使用Gunicorn運行應用:

    gunicorn -w 4 app:app
    

    -w 4表示使用4個工作進程。你可以根據服務器的CPU核心數來調整這個數字。

  6. 配置Nginx作為反向代理(可選): 為了更好地處理靜態文件、負載均衡和提高安全性,你可以使用Nginx作為Gunicorn的前端代理。

    • 安裝Nginx:

      sudo apt install nginx
      
    • 配置Nginx:

      創建一個新的Nginx配置文件,例如/etc/nginx/sites-available/yourapp,并添加以下內容:

      server {
          listen 80;
          server_name yourdomain.com; # 替換為你的域名或公網IP
      
          location / {
              proxy_pass http://127.0.0.1:8000; # Gunicorn默認運行在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;
          }
      }
      
    • 啟用配置:

      創建一個到sites-enabled的符號鏈接:

      sudo ln -s /etc/nginx/sites-available/yourapp /etc/nginx/sites-enabled/
      
    • 測試Nginx配置并重啟服務:

      sudo nginx -t
      sudo systemctl restart nginx
      
  7. 配置防火墻(可選): 如果你的服務器運行在云上,確保開放HTTP(80)和HTTPS(443)端口:

    sudo ufw allow 'Nginx Full'
    

現在,你的Python Web應用程序應該可以通過互聯網訪問了。記得將yourdomain.com替換為你的實際域名或公網IP地址。如果你打算使用HTTPS,請確保配置SSL證書并相應地更新Nginx配置。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女