m0_63276480 2022-08-25 14:43 采纳率: 75%
浏览 147
已结题

python的flask项目不知道liunx系统中遇到的问题,以及利用nginx布置云端时遇到的问题

问题遇到的现象和发生背景

在布置python的flask项目到liunx系统的时候出现了问题

问题相关代码,请勿粘贴截图

文件件

```python

from flask import Flask, request

app = Flask(__name__)
@app.route("/")
def run():
    return "nihao"

@app.route("/abd")
def run():
    return "nihaoaaa"
if __name__ == '__main__':
    app.run(host="0.0.0.0",port=5056)

uwsgi1.ini配置

[uwsgi]

socket = 0.0.0.0:5056

chdir =/root/ss/bb

wsgi-file = ceshiflask.py

callable = app

processes = 4

threads = 2

buffer-size = 65535

vacuum=true

master=true

nginx.conf 配置

![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/40171590416616.png "#left")



###### 运行结果及报错内容 
通过命令运行
1.nginx -c /www/server/nginx/conf/nginx.conf
2.uwsgi -d --ini uwsgi1.ini

访问http://114.115.221.250/
可以正常出现结果

###### 我的解答思路和尝试过的方法 

更改python文件
```python
from flask import Flask, request

app = Flask(__name__)
@app.route("/")
def run():
    return "nihao"

@app.route("/abd")
def run():
    return "nihaoaaa"
if __name__ == '__main__':
    app.run(host="0.0.0.0",port=5056)

nginx -c /www/server/nginx/conf/nginx.conf
uwsgi -d --ini uwsgi1.ini
正常启动

访问http://114.115.221.250/
可以正常出现结果
http://114.115.221.250/abd
出现

出现以下结果

Not Found
The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.

还有如果我需要布置两个flask项目应该如何配置。

  • 写回答

9条回答 默认 最新

  • EdsionWang 2022-08-25 15:25
    关注

    问题1. /abd这个路由下面的方法重名了。导致这个url访问失败了。
    问题2. 不同的Flask项目启动不同的端口(比如你第一个5056,第二个就用5057),然后在nginx上分别用80,8080来映射Flask的两个端口。
    参考:https://blog.csdn.net/yaologos/article/details/113356620

    @app.route("/abd")
    def runab():
        return "nihaoaaa"
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • m0_63276480 2022-08-25 14:46
    关注

    img

    评论
  • 快乐小土狗 2022-08-25 15:05
    关注

    布置两个flask项目应该如何配置?
    你以不同端口启动就行了呀

    评论
  • _zxue 2022-08-25 15:17
    关注

    布置两个flask项目
    如果同一个项目想负载均衡可以参考下面图片配置nginx

    img


    如果是两个项目,要么监听不同的端口,要么根据域名区分

    评论
  • kakaccys 2022-08-25 15:24
    关注

    两种可能,一种是你的两个函数名都叫run,需要修改下函数名,让两个名字不重复,重新启动。
    还有一种是端口号,可以改到8000-9000试一下

    评论
  • 三只小菜猿 PHP领域新星创作者 2022-08-25 15:37
    关注

    第一个 路由是要和下面得方法最好是一致,这样可以避免重复,你这个重复程序以优先级来得,其次部署两个直接使用多个端口就可以了做一个映射

    评论
  • ~白+黑 Python领域新星创作者 2022-08-25 16:49
    关注
    评论
  • 不知火猪 2022-08-27 22:27
    关注

    小项目 一个项目对应一个 端口运行。

    评论
  • 兔子递归 2022-08-28 21:12
    关注

    不太清楚呢

    评论
查看更多回答(8条)

报告相同问题?

问题事件

  • 系统已结题 9月6日
  • 已采纳回答 8月29日
  • 创建了问题 8月25日

悬赏问题

  • ¥15 怎么下载MySQL,怎么卸干净原来的MySQL
  • ¥15 网络打印机Ip地址自动获取出现问题
  • ¥15 求局部放电案例库,用于预测局部放电类型
  • ¥100 QT Open62541
  • ¥15 stata合并季度数据和日度数据
  • ¥15 谁能提供rabbitmq,erlang,socat压缩包,记住版本要对应
  • ¥15 Vue3 中使用 `vue-router` 只能跳转到主页面?
  • ¥15 用QT,进行QGIS二次开发,如何在添加栅格图层时,将黑白的矢量图渲染成彩色
  • ¥50 监控摄像头 乐橙和家亲版 保存sd卡的文件怎么打开?视频怎么播放?
  • ¥15 Python的Py-QT扩展库开发GUI