要在服务器上运行Flask并通过公网IP访问,你需要按照以下步骤进行操作:
(图片来源网络,侵删)1、安装Flask:
在服务器上安装Python和pip(如果尚未安装)。
使用pip安装Flask模块:pip install flask
。
2、创建Flask应用程序:
在你的工作目录中创建一个名为app.py
的文件。
在app.py
文件中编写一个简单的Flask应用程序,如下所示:
“`python
from flask import Flask
app = Flask(__name__)
@app.route(‘/’)
def hello():
return ‘Hello, World!’
if __name__ == ‘__main__’:
app.run()
“`
3、配置服务器防火墙:
确保你的服务器防火墙允许外部访问Flask应用程序所使用的端口,默认情况下,Flask使用5000端口。
如果你使用的是云服务器,登录到云服务提供商的管理控制台,找到安全组或防火墙设置,并添加一个入站规则以允许来自任意IP地址的5000端口流量。
4、获取公网IP地址:
你可以通过多种方式获取公网IP地址,例如通过命令行工具、浏览器或其他在线服务,确保你获得的是服务器的公网IP地址。
5、启动Flask应用程序:
在服务器上打开终端或命令提示符窗口。
导航到包含app.py
文件的工作目录。
运行以下命令来启动Flask应用程序:flask run
,这将在本地主机上启动Flask应用程序,并显示一个URL,如http://127.0.0.1:5000/
,请注意,这个URL仅适用于本地访问。
6、配置反向代理服务器:
由于你希望通过公网IP地址访问Flask应用程序,需要将请求转发到本地主机上运行的Flask应用程序,这可以通过设置一个反向代理服务器来实现。
一种常见的方法是使用Nginx作为反向代理服务器,在服务器上安装Nginx(如果尚未安装),编辑Nginx配置文件(通常位于/etc/nginx/sitesavailable/default
),并将以下内容添加到其中:
“`nginx
server {
listen 80; # 监听HTTP请求的端口号,可以根据实际情况修改为其他端口号
server_name your_public_ip; # 将your_public_ip替换为你的实际公网IP地址
location / {
proxy_pass http://127.0.0.1:5000; # 将请求转发到本地主机上的Flask应用程序,即Flask默认运行的端口号5000
proxy_set_header Host $host;
proxy_set_header XRealIP $remote_addr;
proxy_set_header XForwardedFor $proxy_add_x_forwarded_for;
}
}
“`
保存并关闭配置文件,重新加载Nginx以应用更改:sudo service nginx reload
(对于Ubuntu/Debian系统)或sudo systemctl reload nginx
(对于CentOS/RHEL系统)。
现在,你应该能够通过你的公网IP地址访问Flask应用程序了,在浏览器中输入你的公网IP地址和端口号(默认为5000),例如http://your_public_ip:5000/
,你应该看到返回的"Hello, World!"消息。
最新评论
本站CDN与莫名CDN同款、亚太CDN、速度还不错,值得推荐。
感谢推荐我们公司产品、有什么活动会第一时间公布!
我在用这类站群服务器、还可以. 用很多年了。