技术解析

nginx 求助,反向代理 error.log 里不报错,但结果一直是 400
0
2021-05-25 11:24:02
idczone

具体情况:本人有个域名用来放博客,最近想整个网盘于是装了 zfile大带宽服务器,本人想法如下:访问 mydomain.com/yunpan/ 跳转到 zfile 主页,遂用 proxy_pass 将 mydomain.com/yunpan/ 的请求转发到运行 zfile 的端口上。nginx -t 不报错,但是访问 mydomain.com/yunpan/会出现 404 界面,error.log 里不报错,access.log 里显示 get 请求 400


没毛病啊

大神求解 什么没毛病

最好贴完整的配置文件和日志信息

我猜 400 请求是 zfile 返回的,你看看 zfile 日志有请求记录吗?如果 zfile 返回的,error.log 里就没有

我的配置信息贴不出来,需要验证手机号,我把关于转发的部分手打一下
location /yunpan{
proxy_pass https:127.0.0.1:zfileport;
proxy_http_version 1.1;
}

我看了 zfile 的日志,好像是我的转发没有生效,直接通过 ip 访问 zfile 是有记录的,用 mydomain/yunpan 是没有记录的

location /yunpan/ {
proxy_pass https://127.0.0.1:zfileport/;
}
注意最后那个斜杠。
按你原来的写法 访问 domain.com/yunpan/xxx 会被代理到 127.0.0.1:port/yunpan/xxx

楼上正解

看看 url 吧 400 是请求有问题,看你上面的是 url 不对。

感谢但是还是不行,这次会跳到我博客的 /search/error.html 页面,会不会是和我套了 cf 的 cdn 有关系

你这个反代的是 https 协议?难道不要带上 host 吗?

chmod 读的权限

不是 https 写错了 配置里是 http 。

不是这个问题,权限已经给 nginx 了

proxy_set_header Host $host;

zfile 项目添加访问前缀 /yunpan

你实际访问是这样的 domain.com/yunpan/xxx,找不到静态页面

感谢 昨天发现的确是这个问题已经添加了,现在出现了跨域请求的问题

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服