2025年1月14日 星期二

在 Windows Server 上使用 Flask 架設網站

 在 Windows Server  上使用 Flask 架設網站,您可以按照以下步驟進行:


步驟 1:安裝 Python

  1. 下載並安裝 Python

    • Python 官方網站 下載適合 Windows 的版本。
    • 安裝時勾選 Add Python to PATH
  2. 檢查 Python 是否安裝成功

    • 在命令提示字元中運行:
      python --version
      
    • 顯示版本號表示安裝成功。

步驟 2:安裝 Flask

  1. 使用 pip 安裝 Flask:
    pip install flask
    
  2. 確認安裝成功:
    pip show flask
    

步驟 3:編寫 Flask 應用

  1. 在工作目錄創建一個名為 app.py 的文件:

    from flask import Flask
    
    app = Flask(__name__)
    
    @app.route('/')
    def home():
        return '<h1>Hello, Flask on Windows Server!</h1>'
    
    if __name__ == '__main__':
        app.run(host='0.0.0.0', port=5000)
    
  2. 測試應用:

    • 在命令提示字元中運行:
      python app.py
      
    • 打開瀏覽器訪問 http://<server-ip>:5000,應顯示 Hello, Flask on Windows Server!

步驟 4:設置 Windows 防火牆

  1. 開啟 TCP 5000 埠:

    • 打開 控制面板 > 系統和安全 > Windows 防火牆
    • 點擊 高級設置 > 入站規則 > 新規則
    • 選擇 ,並指定 TCP 5000。
    • 命名規則並保存。
  2. 測試外部連線:

    • 從其他設備訪問 http://<server-ip>:5000

步驟 5:以服務形式運行 Flask 應用

  1. 安裝 Gunicorn 或 Waitress

    • Gunicorn 是專業的 WSGI 服務器,但在 Windows 上建議使用 Waitress。
    pip install waitress
    
  2. 使用 Waitress 運行 Flask

    • 修改命令啟動應用:
      waitress-serve --host=0.0.0.0 --port=5000 app:app
      
  3. 將 Flask 應用設為後台服務

    • 使用 Task Scheduler(工作排程器)或 NSSM(Non-Sucking Service Manager)將命令行設為持續運行。

步驟 6:升級到生產環境

  1. 使用域名與 SSL(可選)

    • 配置域名(例如通過 DNS 設定)指向伺服器 IP。
    • 安裝並配置 SSL(例如使用 Let’s Encrypt 提供的證書)。
  2. 反向代理(可選)

    • 使用 Nginx 或 IIS 作為反向代理,將 HTTP 請求轉發至 Flask 應用。
    • 配置文件範例(IIS 上):
      • 安裝 ARR(Application Request Routing)與 URL Rewrite 模組。
      • 配置轉發到 Flask 應用的反向代理規則。

沒有留言:

張貼留言