gpt4 book ai didi

java - 无法通过Nginx反向代理在Tomcat上远程部署

转载 作者:行者123 更新时间:2023-11-28 22:33:41 24 4
gpt4 key购买 nike

在我的测试服务器(Fedora 26)上安装了tomcat环境。一切都是库存包装。我还在前面安装和设置了 Nginx 反向代理。 tomcat-users.xml 已设置,我可以按预期登录到应用程序管理器。

现在,当我尝试向其部署 WAR 时,我的 Nginx 日志出现严重故障:

2017/09/25 15:12:21 [crit] 13878#0: *36 open() "/var/lib/nginx/tmp/client_body/000000XXXX" failed (13: Permission denied), client: 200.x.x.x, server: some-sandbox.com, request: "POST /manager/html/upload?org.apache.catalina.filters.CSRF_NONCE=XXXXXXXxxxx HTTP/1.1", host: "some-sandbox.com", referrer: "https://some-sandbox.com/manager/html/upload?org.apache.catalina.filters.CSRF_NONCE=XXXXXXXxxxx

Nginx 然后返回 500 个内部服务器给浏览器。

我可能做错了什么?有什么建议如何解决?

谢谢。

最佳答案

显然临时上传文件夹 /var/lib/nginx/tmp 存在一些权限问题。我已确保整个路径归正确的系统用户所有。但问题依然存在。

所以为了避免这个问题,我决定配置 Nginx 以完全跳过缓存客户端主体。就我的目的而言,在代理之前缓存没有实际值(value)。

Nginx 1.7.11 引入了一个新的 proxy_request_buffering指示。如果将其设置为 off,缓冲将被禁用。因此任何权限问题都不会影响上传。

所以我的服务器部分有这个:

location / {
proxy_request_buffering off;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8080/;
}

关于java - 无法通过Nginx反向代理在Tomcat上远程部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46399762/

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