NGINX - 如果根位置使用 proxy_pass,是否可以指定自定义位置?

NGINX - 如果根位置使用 proxy_pass,是否可以指定自定义位置?

我是服务器新手,所以我可能对这里发生的事情以及如何解决它有误解,但无论如何。我有一个在端口 3000 上运行的节点服务器,并在我的域的基础上提供服务。

server {
    server_name blahblah.com www.blahblah.com; # managed by Certbot

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }

    location /test/ {
        index index.html
        root /var/www/html;
    }
    
    ...

我想添加一个新的静态位置 (test),该位置应覆盖上面的 proxy_pass 设置,但我认为该/块正在消耗其后的所有内容,因为当我访问 /test 时,它会将我带到我的节点应用程序的自定义 404 页面。这可以实现吗?

sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

答案1

不,location {}订单仅在以下情况下有效:正则表达式位置(location ~ {})。正常(字首) 位置使用匹配最长匹配规则。

相关内容