Nginx 自动将 proxy_pass 重定向到根路径

2023-12-23

我有两个 nextjs 应用程序在端口 3000 和 3001 上运行,我的 Nginx 配置如下

events {
    worker_connections  1024;
}

http {
    server {
        listen       8080;
        server_name  http://localhost:8080;
        proxy_buffering off;
        proxy_http_version 1.1;

        location / {
            proxy_pass    http://localhost:3000/;
            proxy_redirect off;
        }
        location ^~ /app {
            proxy_pass    http://localhost:3001/;
            proxy_redirect off;
        }
    }
}

端口 3000 上的 NextJS 应用程序运行良好。

  1. 当我访问 localhost:8080 时 - 它会按预期从端口 3000 加载应用程序。

但是无法通过nginx URL访问端口3001上的第二个应用程序

  1. 当我访问 localhost:8080/app 时 - 它从端口 3000 加载应用程序。
  2. 当我访问 localhost:8080/app/ 时,它将 URL 更改为 localhost:8080 并从端口 3000 加载应用程序。
  3. 当我访问 localhost:8080/app/login 时 - 它将 URL 更改为 localhost:8080/login 并加载 404,因为端口 3000 上的应用程序没有登录路由。

我在这个配置中缺少什么吗?


put ^~ /app之前阻塞/堵塞 。较高的块具有优先权并且/块就像......对于一切。

   location ^~ /app {
        proxy_pass    http://localhost:3001/;
        proxy_redirect off;
    }

   location / {
        proxy_pass    http://localhost:3000/;
        proxy_redirect off;
    }
   

除 /app 之外的任何内容都将进入第二个块。

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

Nginx 自动将 proxy_pass 重定向到根路径 的相关文章

  • nginx位置正则表达式,匹配多次

    如何在 nginx 位置正则表达式中多次匹配 看来 x x 语法永远不起作用 例如 location abc w 1 3 从来不工作 您必须引用包含以下内容的位置 or 人物 location abc w 1 3 否则 nginx 将其解析
  • 连接到上游时 Nginx 错误:(13:权限被拒绝)

    我在我的中收到此错误nginx error log file 2014 02 17 03 42 20 crit 5455 0 1 connect to unix tmp uwsgi sock failed 13 Permission den
  • Kubernetes Ingress 在 nginx 反向代理后面运行

    我已经在可以从互联网访问的服务器上安装了 minikube 我创建了一个可用的 kubernetes 服务 gt kubectl get service myservice NAME CLUSTER IP EXTERNAL IP PORT
  • NGINX 上的 SSL 终止

    我已经购买了 SSL 证书 并在验证模数时正确地将其捆绑在一起 即https kb wisc edu middleware 4064 https kb wisc edu middleware 4064 那么哈希值是相同的 我已将证书和密钥移
  • 在 docker 中将 pgadmin 连接到 postgres

    我有一个docker compose与服务文件python nginx postgres and pgadmin services postgres image postgres 9 6 env file env volumes postg
  • 错误请求 400:nginx/gunicorn

    我已经遵循了这个教程 http blog wercker com 2013 11 25 django 16 part3 html http blog wercker com 2013 11 25 django 16 part3 html我现
  • 如何使用 next auth 通过自定义 Spring API 库和端点进行身份验证

    我是 Next js 的新手 正在将我的前端从 React 迁移到 Next v4 我已经使用 Spring 开发了一个后端 它连接到 Azure 上托管的 MySQL 数据库 该 API 在 Postman 和 React 前端上经过全面
  • 上游太大 - nginx + codeigniter

    我从 Nginx 收到此错误 但似乎无法弄清楚 我正在使用 codeigniter 并使用数据库进行会话 所以我想知道标题怎么会太大 有没有办法检查标题是什么 或者看看我能做些什么来修复这个错误 如果您需要我提供任何conf文件或其他文件
  • 如何避免 nginx“上游发送太大的标头”错误?

    我正在运行 nginx Phusion Passenger 和 Rails 我遇到了以下错误 upstream sent too big header while reading response header from upstream
  • nginx上传client_max_body_size问题

    我正在运行 nginx ruby on rails 并且有一个简单的多部分表单来上传文件 一切正常 直到我决定限制要上传的文件的最大大小 为此 我设置了 nginxclient max body size to 1m 1MB 并且当该规则被
  • 如何使用 NextJS 使用自托管字体face?

    使用 NextJS 的字体 我已经阅读了有关如何在 NextJS 中使用自托管字体的不同主题 我得到了什么 wait compiling 当我这样做时 font face font family montserrat src url myp
  • uWSGI 皇帝权限被拒绝,除非 root

    我尝试使用二进制文件本身的标志 uid www data gid www data 并将其设置在我的配置中 uid www data gid www data 但套接字总是由我正在使用的帐户生成 因此我从 nginx 收到权限被拒绝的错误
  • 禁用 Kubernetes NGINX 入口的 SSL 重定向

    默认情况下 在 Kubernetes NGINX 入口中启用 SSL 重定向 如何禁用此功能 目前的实施如下 apiVersion extensions v1beta1 kind Ingress metadata name project
  • 如何列出 nginx 中的所有虚拟主机

    有没有一个命令可以列出 CentOS 上 nginx 下运行的所有虚拟主机或服务器 我想将结果通过管道传输到文本文件以用于报告目的 我正在寻找与我用于 Apache 的命令类似的命令 apachectl S 2 gt 1 grep 端口 8
  • Material UI + Nextjs:抽屉

    我在 React Nextjs 项目中遇到了 Material UI Drawer 的实现问题 问题是 当我在导航器中重新加载页面时 抽屉和应用栏的样式崩溃 当我重新加载服务器时 这种情况没有发生 仅在页面重新加载时发生 目前我不知道我必须
  • Flask+Nginx+uWSGI:导入错误:没有名为站点的模块

    我安装为http www reinbach com uwsgi nginx flask virtualenv mac os x html http www reinbach com uwsgi nginx flask virtualenv
  • 设置状态时重新渲染过多 - useSWR

    我在用useSWR https swr vercel app docs data fetching获取数据 然后使用数据 我想通过使用reduce 获得总计 如果我 console log 输出该值 它工作正常 但一旦我尝试使用该值设置状态
  • 为什么需要将nginx中的$args重定向到index.php?

    许多 PHP 框架建议将其添加到 nginx location try files uri index php is args args 执行index php在所有 HTTP 请求上 为什么我需要 is args args 我觉得 arg
  • 一个 Next.js 路由中的两个不同子域

    我想使用构建一个新平台Next js https nextjs org React js https reactjs org and 反应路由器 https reacttraining com react router web guides
  • 全新安装 create-next-app 后,无效的 href 传递给路由器错误

    在我的本地计算机上安装 nextjs 应用程序后 使用create next app我在控制台中收到此错误Invalid href passed to router 有谁知道如何解决它 我尝试使用to属性而不是href属性在Link组件的但

随机推荐