更改 Flask 中的端口

Salman Mehmood 2022年7月18日
更改 Flask 中的端口

我们即将学习如何在通过命令行界面运行我们的 flask 应用程序时更改端口,以及如何在不同的端口和不同的操作系统中同时运行 flask 应用程序。

更改 Flask 中的默认端口

大多数 Flask 的初学者会使用下面的代码来定义一个他们想要运行他们的 Flask 应用程序的端口。

if __name__=='__main__':
    app.run(port=1000)

但是除了这样做,你也可以在命令行界面上执行此操作,这是推荐的执行方式,以便我们将在 flask 应用程序所在的目录中打开一个终端,然后如果你运行以下命令在 Windows 上工作。

set FLASK_APP=app.py

如果你在基于 UNIX 的操作系统上工作,则必须使用以下命令。

export FLASK_APP=app.py

从技术上讲,我们不需要传递像 app.py 这样的文件名,因为当我们没有指定它时,它会自动查找 app.py,但为了使其明确,我们将其添加到那里。

我们将使用以下命令来运行 Flask 应用程序。

Flask run

当我们运行它时,默认配置运行在端口 5000,我们可以去浏览器检查端口以及正在运行的端口。

输出:

运行 Flask 默认配置

假设我们出于某种原因想要更改端口。例如,我们有几个 Flask 应用程序,在这种情况下,我们正在创建不同的 API 并同时测试多个 API,但它们不能在同一个端口上,因此我们必须至少为其中一个更改端口他们。

让我们停止我们的服务器,你可以通过多种方式来执行此配置变量。我们来看第一种定义端口的方法,在基于 UNIX 的操作系统中我们可以使用以下命令。

export FLASK_RUN_PORT=8000

一种方法是在 Windows 操作系统上。

flask run --port=80

当我们运行这个命令时,我们在下面的输出中看到它在端口 80 上运行。如果我们改变它并且它正在工作,我们尝试返回到端口 5000,但它不再工作。

在 Flask 中更改端口

你还可以使用传统方式来定义特定端口,如开头所述。

完整源代码:

from flask import Flask

app = Flask(__name__)

@app.route("/")
def PORT_FUNC():
    return '<h2>Hi there, this is port testing<h2/>'

# set FLASK_APP=app.py
# unix command
# export FLASK_APP=app.py

# set FLASK_RUN_PORT=8000

# windows command
# flask run --port=80

# if __name__=='__main__':
#     app.run(port=1000)
Salman Mehmood avatar Salman Mehmood avatar

Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.

LinkedIn