将在gunicorn上运行的Flask应用程序代理到nginx中的子路径

2024-06-25

我有一个 Flask 应用程序在gunicorn上运行http://127.0.0.1:4000:

gunicorn -b 127.0.0.1:4000 webapp:app

现在我想使用nginx作为反向代理和转发http://myserver.com/webapp to http://127.0.0.1:4000以某种方式,每个http://myserver.com/webapp/subpathhttp://127.0.0.1:4000/subpath.

不使用子路径时,代理/重定向可以很好地工作:

upstream app {
    server 127.0.0.1:4000 fail_timeout=0;
}

server {
    listen 80 default;
    client_max_body_size 4G;
    server_name _;

    location / {
       proxy_pass http://app;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       proxy_set_header Host $http_host;       
    }
}

我该如何设置

location /webapp {
    #go to my gunicorn app, translate URLs nicely
}

Flask 开发人员的这个技巧不起作用:http://flask.pocoo.org/snippets/35/ http://flask.pocoo.org/snippets/35/罢工>

已解决:片段http://flask.pocoo.org/snippets/35/ http://flask.pocoo.org/snippets/35/作品!我的模板中有一些绝对 URL(例如/task/delete)并且必须将一切更改为url_for().

愚蠢...但现在它按预期工作,我的应用程序已打开'http://myserver.com/subpath http://myserver.com/subpath'


我解决了我的问题:片段http://flask.pocoo.org/snippets/35/ http://flask.pocoo.org/snippets/35/确实有效,我太愚蠢了,在我的模板中包含绝对 URL。我把它改为url_for()现在它就像魅力一样发挥作用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将在gunicorn上运行的Flask应用程序代理到nginx中的子路径 的相关文章

  • node.js 本身还是 nginx 前端来提供静态文件?

    是否有更快的基准或比较 将 nginx 放在节点前面并让它直接提供静态文件或仅使用节点并使用它提供静态文件 nginx 解决方案似乎对我来说更易于管理 有什么想法吗 我不得不不同意这里的答案 虽然 Node 可以做得很好 但如果配置正确 n
  • 如何在 Flask 中的视图函数/会话之间传递复杂对象

    我正在编写一个 Web 应用程序 当 且仅当 用户登录时 该应用程序从第三方服务器接收大量数据 这些数据被解析为自定义对象并存储在list 现在 用户在应用程序中使用这些数据 调用不同的视图 例如发送不同的请求 我不确定什么是最好的模式在视
  • JasperServer代理CSRF错误

    我在 Ubuntu 14 04 LTS 上使用捆绑的 Tomcat 和 Nginx 代理重新安装了 JasperReports Server 6 2 以便我可以访问https mydomain xyz jasperserver https
  • 如何对这个 Flask 应用程序进行单元测试?

    我有一个 Flask 应用程序 它使用 Flask Restless 来提供 API 我刚刚写了一些身份验证来检查 如果消费者主机被识别 该请求包含一个哈希值 通过加密 POST 的请求内容和 GET 的 URL 以及秘密 API 密钥来计
  • 一起使用 Flask 和 Tornado?

    我是以下的忠实粉丝Flask 部分是因为它很简单 部分是因为它有很多扩展 http flask pocoo org extensions 然而 Flask 是为了在 WSGI 环境中使用而设计的 而 WSGI 不是非阻塞的 所以 我相信 它
  • GET /socket.io/?EIO=3&transport=polling&t=MniHjPM HTTP/1.1

    我有一个简单的 Flask 聊天应用程序 我正在从教程中测试它 据说我只需要使用 python app py 命令运行它 但是当我通过访问它时http 本地主机 5000 http localhost 5000我不断收到这样的消息 我希望能
  • Nginx - “强制”200 缓存响应而不是 304

    是否有可能以某种方式强制执行 200 缓存 响应 而不是静态文件未修改的 304 响应 如果是这样 您可能会节省大量服务器请求 并显着加快回访者的加载时间 我发现单独的 Expires 并不能正确设置行为 下面是肯定的火 Set cache
  • AttributeError:“SQLAlchemy”对象没有属性“模型”[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 AttributeError sqlalchemy 对象没有属性 模型 有时会出现 ModuleNotFoundError 没有名
  • 如何将swaggerhub生成的flask swagger服务器部署到heroku?

    我正在尝试部署从 swaggerhub 生成的 Flask swagger 服务器 下面是我使用的文件夹结构和 procfile 有谁知道如何在heroku中部署这个flask swagger服务器吗 project swagger cod
  • 通过systemd服务启动烧瓶

    有一个systemd服务文件 etc systemd system flask app service Unit Description flask app After network target Service User root Wo
  • 如何将画布转换为图像以上传到烧瓶?

    好吧 我正在尝试将调整大小的画布图像作为文件上传到 Flask 首先我尝试使用canvas toDataURL 将其转换为 base64 字符串 然后尝试使用以下命令将其作为图像上传formdata使用AJAX 就没那么幸运了 然后我尝试使
  • 构建 Flask docker 镜像时分配端口

    我最近使用 Flask 创建了一个应用程序 并将 py 文件放入 docker 容器中 然而 我对人们分配端口的在线案例感到困惑 首先在我写的 py 文件的底部 if name main app run host 0 0 0 0 port
  • Flask 上下文处理器函数

    按照 Flask 页面上的最小示例 我尝试构建一个上下文处理器 上下文处理器 py def inflect this def inflectorize number word return format number inflectoriz
  • req.protocol 永远不会在 nginx 代理后面提供 https

    我正在尝试识别我的 Express 应用程序是否通过https协议 Using nginx处理认证和加密 在同一台机器上 并转发请求 req protocol评估为http即使 https 正在使用并且工作正常 我已经尝试了以下两种方法 单
  • 运行 Fiddler 作为 HTTPS 服务器的反向代理

    我有以下情况 2台主机 一台是客户端 另一台是HTTPS服务器 Client
  • 通过 HTTP 代理进行 iOS XMPP 聊天

    我有一个 iPhone 应用程序 可与 2 项服务配合使用 通过 http 使用 REST 服务 使用 AFNetworking 通过 TCP 进行 XMPP 聊天 使用 XMPPFrameworkhttps github com robb
  • Flask - 获取点击的链接信息并显示在渲染的页面上

    如何将单击的链接的文本获取到 app route 函数中 例如 假设我有一个显示的链接列表 所有这些链接都链接到同一网址 但每个链接加载不同的内容 li a href animals cat a li li a href animals d
  • Nginx 返回文件路径

    我希望 Nginx 返回路径 example com r 的 r json 文件 我尝试过的 location r alias home user media json r json 但这一切都不起作用 我收到了 500 条消息 home
  • Firebase 托管上的 Angular 9 项目无法传递 https 请求

    我在我的角度项目上使用了代理 如下所示 api target https
  • 我使用自制程序安装nginx,如何添加第三个模块?

    我在我的Mac上brew install nginx 但我不知道配置文件在哪里 并且我使用 brew install nginx add module xxxx 来添加模块不起作用 请帮助 The nginx 已满brew Formula

随机推荐

  • Wpf ScrollViewer 滚动量

    是否可以更改 WPF ScrollViewer 滚动的量 我只是想知道是否可以更改滚动查看器 以便在使用鼠标滚轮或滚动查看器箭头时可以更改增量滚动量 简短的答案是 如果不编写一些自定义滚动代码 就无法做到这一点 但不要让这吓到你 这并不那么
  • 在 UI 更新或触摸事件之前动画不会开始

    我有一个奇怪的问题AlphaAnimation 它应该在以下情况下重复运行 AsyncTask调用处理程序 但是 第一次调用处理程序时Activity 除非我触摸屏幕或更新 UI 例如按手机的菜单按钮 否则动画不会启动 奇怪的是 一旦动画至
  • 更改 IIS URL 重写规则中的查询字符串值

    到目前为止我已经尝试了多种组合但没有运气 我有一个如下所示的网址 https teams company com Search pages results aspx url https teams2017 company com sites
  • Zend Framework 2 - 整数表单验证

    我有以下问题 我 根据教程 编写了一个表单验证 文本字段工作得很好 但整数字段的行为很奇怪 这是我的验证器 inputFilter gt add factory gt createInput array name gt zip requir
  • 将 IMPORTXML Xpath 查询格式化为 Google 表格的可读数据

    我正在将 XML 数据导入到具有以下结构的 google 工作表中 编辑 网址 https sonicstate com news tools revive stats client camp 3785 xml https sonicsta
  • 从Lua到C的Lua嵌套表

    我不幸未能将嵌套 Lua 表转换为 C json 对象 我正在使用 LuaTableToJson 请参阅后面的代码 其中 index 是要检索的参数索引 PopOneArg 是根据值的类型处理值的例程 当有嵌套表时 我想递归地调用 LuaT
  • Android OPEN 微调器,单击按钮即可

    我已经实现了按钮 单击并打开带有微调器的对话框 如下所述here http www dotnetexpertsforum com dialog box with spinner view in android t1485 html 然而 这
  • 如何编写一个简单的版本控制系统?

    我想做一个简单的版本控制系统 但我不知道如何构建我的数据和代码 这是一个简短的例子 用户登录 User has two options when uploading a file 提交新文件 提交文件的新版本 用户应该能够看到树 版本不同
  • woocommerce 在前端按库存和缺货对产品进行排序

    我想首先在产品类别中显示库存产品 或者如果可能的话在任何地方显示 然后我也想在 Woocommerce 中显示缺货产品 其实有很多产品没有数量但是有库存 所以需要检查库存状态 但我更喜欢先有更多的数量 在这种情况下 如何强制当前排序 非常感
  • 如何使用 jQuery 调用需要基本身份验证的 JSON Web 服务?

    我在 javascript 方面有点新手 但我正在尝试调用一个 JSON Web 服务 该服务需要使用 jQuery 或任何真正有效的东西 进行基本身份验证 我在谷歌上找不到任何真正的答案 我想做的事情可能吗 您将需要设置适当的请求标头来传
  • golang 将 big.Float 转换为 big.Int

    将big Float转换为big Int 我在下面编写代码 但它溢出了uint64 那么将big Float转换为big Int的正确方法是什么 package main import fmt import math big func Fl
  • jQuery .append() 产生乱序的 html 元素。为什么?

    我的 html 包含这个 div div 当我在 javascript 中这样做时 container append div container append p container append test content containe
  • Angular 2/4 编辑表单填充 FormArray 控件

    我正在尝试为具有嵌套属性 FormArray 的模型实现编辑表单 我在语法上遇到了问题 并且不确定我是否走在正确的轨道上 主表单的属性有效 这是我遇到问题的嵌套表单 这是我到目前为止所拥有的 这里我发起表单组 private initFor
  • 如何使用官方 MongoDB C# 驱动程序将 BsonDocument 转换为强类型对象?

    出于单元测试的目的 我想测试我的类映射 而无需在 MongoDB 数据库中读取和写入文档 为了处理特殊情况 例如循环父 子引用和只读属性 我使用了BsoncClassMap RegisterClassMap lt MyType gt 一些自
  • Google Apps 脚本 UrlFetchApp 返回未经授权的错误 401

    这是我正在使用的代码 function doc to html id var url https docs google com feeds download documents export Export id id exportForm
  • ReactJS - 排序 - TypeError: 0 是只读的

    我试图在将对象映射到reactjs之前对其进行排序 但每次这样做时 我都会不断收到 TypeError 0 is read only 我注意到加载时 props 是空的 但即使当我试图检查数组的长度并且仅在它大于 0 时应用排序 或者当数组
  • 静态解构器

    我在 Web 服务中实例化了类 该服务在静态成员中保留了一些资源 如果我不是静态地持有这些资源 我可能会通过一些 IDisposable 对象访问它们 我可以在 Dispose 上释放资源 无论保留此会话是否是一个好主意 NET 是否提供了
  • 如何显示base64编码的pdf?

    我必须在新选项卡中显示 base64 pdf 我正在使用下面的代码 var windo window open var objbuilder objbuilder windo document write objbuilder 它可以在 F
  • 具有多种布局的 RecyclerView

    我正在使用 RecyclerView 在 CardView 中显示文本 但我想在 RecyclerView 的顶部添加一个 Header TextView 如下所示 因此 我仅使用 TextView 制作了另一个布局文件 top heade
  • 将在gunicorn上运行的Flask应用程序代理到nginx中的子路径

    我有一个 Flask 应用程序在gunicorn上运行http 127 0 0 1 4000 gunicorn b 127 0 0 1 4000 webapp app 现在我想使用nginx作为反向代理和转发http myserver co