场景:按照github文档上启动一个flask的app,默认是用5000端口,如果5000端口被占用,启动失败。 样例代码: from flask import Flask app = Flask(__name__) @app.route('/') def hello(): return 'Hello, World!' 启动的脚本: $ env FLASK_APP=hello.py flask run 出错信息如下: renjg@renjg-HP-Compaq-Pro-6380-MT:~/WorkSpace/python/django$ env FLASK_APP=ind 在Python的Flask框架中,默认情况下,当你运行`flask run`命令启动应用时,它会使用5000端口。如果该端口已被其他服务占用,启动就会失败,如你所遇到的情况。要修改Flask的默认端口号,你可以采取以下方法: 1. **命令行参数**: 当你运行`flask run`命令时,可以使用`--port`或`-p`选项来指定端口号。例如,如果你想让应用监听在8080端口,你可以执行: ``` $ flask run --port 8080 ``` 2. **环境变量**: 除了命令行参数,你还可以通过设置`FLASK_RUN_PORT`环境变量来改变端口。在启动应用之前,先设置这个变量,然后运行`flask run`。在bash中,你可以这样做: ``` $ export FLASK_RUN_PORT=8080 $ flask run ``` 3. **配置文件**: 如果你希望在多个地方或者自动化脚本中使用相同的端口,可以创建一个`config.py`文件来定义配置。在文件中添加: ```python class Config: SERVER_PORT = 8080 ``` 然后在你的主应用文件(如`hello.py`)中导入并使用这个配置: ```python from config import Config app = Flask(__name__, config=Config) ``` 这样,即使不提供命令行参数或环境变量,Flask也会使用`config.py`中定义的端口。 4. **直接在代码中设置**: 你也可以直接在你的Flask应用初始化时设置端口: ```python from flask import Flask app = Flask(__name__) app.run(port=8080) ``` 这样,无论以何种方式启动应用,它都会使用8080端口。 5. **在使用`flask`命令时覆盖默认配置**: 在`flask`命令中,你可以使用`FLASK_APP`环境变量指定你的主应用文件,而`FLASK_RUN_PORT`环境变量来指定端口,例如: ``` $ env FLASK_APP=hello.py FLASK_RUN_PORT=8080 flask run ``` 错误信息显示的是尝试在生产环境中使用开发服务器的警告,这通常不推荐,因为开发服务器(`flask run`)并不适合处理高并发或安全性要求高的情况。在生产环境中,你应该使用WSGI服务器,如Gunicorn或uWSGI,配合Nginx进行反向代理和负载均衡。 修改Flask默认端口的方式多种多样,可以根据实际需求选择合适的方法。记得在选择新端口时,确保该端口没有被其他服务占用,以免再次遇到启动失败的问题。
- 粉丝: 4
- 资源: 919
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 纯css3发光霓虹灯文字闪烁特效代码.zip
- 用VBS制作自己的进度条
- 电脑说话VBS什么电脑都能用
- 利用HTML+CSS+JS的国漫分享网站(响应式)
- 练习springboot1 项目 模拟高并发秒杀,实现基本的登录、查看商品列表、秒杀、下单等功能,简单实现了系统缓存、降级和限流
- 一个社区论坛项目,技术栈:spring boot + thymeleaf+Redis 实现的功能:发帖,关注,点赞,私信,系统通知,日活统计.zip
- 会员管理系统.zip-会员管理系统.zip
- 解压软件 ZArchiver.apk
- 《系统分析和设计》课程作业-面向中国各大城市的医院预约挂号系统.zip
- SM4学习备份,有用的
评论0