gpt4 book ai didi

sockets - 将 nginx 位置重定向/重写到不带前缀的 .sock 文件

转载 作者:行者123 更新时间:2023-12-02 15:02:50 25 4
gpt4 key购买 nike

我有一台服务器,上面运行着多个 API。其中之一是users-DB 下面就可以很好地理解gunicorn:

location /usersDB/ {
include proxy_params;
proxy_pass http://unix:/home/ubuntu/projects/UsersDB-api/app.sock;
}

除了当我尝试访问 usersDB API 的/helloWorld 路由并查看gunicorn.err 的日志时,我看到:

GET /usersDB/helloWorld

我希望看到:

GET /helloWorld

当然,gunicorn 返回 404,这就是我在浏览器中看到的。我尝试过重写规则:

location /usersDB/ {
rewrite /usersDB/(.*) /$1 last;
include proxy_params;
proxy_pass http://unix:/home/ubuntu/projects/UsersDB-api/app.sock;
}

但是上述结果导致请求到达 /var/www/htmlhelloWorld 而不是 app.sock。

我知道,如果您使用 proxy_pass 的 url,则只需添加 trailing / ,但我不确定在 sock 文件的情况下该怎么做。

如何去掉 nginx 所有路由中现在包含的 /usersDB/ 后缀?

最佳答案

使用分隔符:。例如:

proxy_pass http://unix:/home/ubuntu/projects/UsersDB-api/app.sock:/;

参见this document了解详情。

关于sockets - 将 nginx 位置重定向/重写到不带前缀的 .sock 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48759076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com