当前位置: 首页 > 知识库问答 >
问题:

NGINX位置指令和proxy_pass的意外行为

顾正初
2023-03-14

static->http://localhost:8080

dev webserver->http://localhost:8080/dev

我将其他几个服务绑定到不同的位置指令。

...
upstream qgis {
   server qgis-spcluster_server:80;
}
...    
server {
    listen       8080;
    server_name  localhost;

location / {
    root   /usr/share/nginx/html/build;
    index  index.html index.htm;

    auth_basic "Zugangskontrolle";
    auth_basic_user_file /etc/nginx/.htpasswd;
}

location /dev/ {
    proxy_pass http://web_app/;

    auth_basic "Zugangskontrolle";
    auth_basic_user_file /etc/nginx/.htpasswd;
}

location /static/ {
    proxy_pass http://web_app/static/;
}

location /qgis/ {
    proxy_pass http://qgis/;
}

location /apex/ {
    proxy_pass http://apex/apex/;
    auth_basic "off";
}

...
    null
    null

所以现在我有点不知道如何解决这个问题。

共有1个答案

邰英毅
2023-03-14

请从位置指令中删除后面的/或在访问它们时提供/

Nginx查找最长的前缀匹配位置。当您访问http://localhost:8080/apex时,它被路由到/,因为/apex/不是/apex的前缀

位置的文档在这里

 类似资料:
  • 本文向大家介绍nginx proxy_pass指令’/’使用注意事项,包括了nginx proxy_pass指令’/’使用注意事项的使用技巧和注意事项,需要的朋友参考一下 1. proxy_pass配置说明 不带/ 带/ 上面两种配置,区别只在于proxy_pass转发的路径后是否带 “/” 针对情况1,如果访问url = http://server/test/test.jsp,则被nginx代理

  • 我的登录模板中有一些代码,显示了用freemarker编写的错误凭据的错误。一切看起来都很正常,语法正确,但sparkjava抛出了ParseException 我的代码: 我真的不知道出了什么问题。我看了留档,我觉得我的语法很好。你能帮我吗?

  • 问题内容: 在chrome 页面“ http://fsa.citop.in/lnct/ ” 的控制台中,该POST请求给我错误。 但是,如果我使用(即不使用http://),它不会给我带来任何错误,但数据不会返回任何内容。在POST请求中,需要一个JSON对象。请有人解释这里发生了什么以及如何解决。 问题答案: 这很可能是因为响应是HTML,并且正在尝试将其解析为其他内容。该4位是第一<的。 您应

  • 问题内容: 在处理类似于Facebook的内容提要的React应用程序组件中,我遇到了一个错误: Feed.js:94未定义的“ parsererror”“ SyntaxError:JSON中位置0处的意外令牌< 我遇到了一个类似的错误,事实证明这是render函数中HTML的错字,但这里似乎并非如此。 更令人困惑的是,我将代码回滚到了较早的已知工作版本,但仍然出现错误。 Feed.js: 在Ch

  • 我用的是Angular 5.0.0。我想连接。但是,当您启动应用程序时,就会发生错误。

  • 我正试图将一本故事书添加到我的项目中,但出现了此错误 将Storybook支持添加到JSON中位于JSON位置550的“Angular”应用程序SyntaxError:Unexpected token]。在readFileAsJson(C:\Users\Marouen\AppData\Roaming\npm-cache\u npx\17500\node)处解析()_modules@storyboo