我正在尝试使用proxy_pass在两个Nginx服务器之间发布大文件。
源服务器在服务器块中具有以下内容:
proxy_connect_timeout 43200s;
send_timeout 43200s;
proxy_read_timeout 43200s;
location ^~ /sub/ {
client_max_body_size 2000M;
proxy_set_header Real-IP $remote_addr;
proxy_set_header Host sub.domain.io;
proxy_pass https://sub.domain:443/;
}
目标服务器在服务器中具有以下内容:
client_max_body_size 2000M;
fastcgi_read_timeout 300;
proxy_read_timeout 300;
我将PHP时间限制设置为43200,并将内存限制设置为3G。
代理可以正常工作,但是当我尝试对大型文件进行HTTP POST时,文件将上传30秒,然后挂起,然后浏览器返回错误:
ERR_NAME_NOT_RESOLVED
如果将proxy_pass https://sub.domain:443/;
更改为IP地址,则会收到错误消息:
ERR_HTTP2_PING_FAILED
nginx错误日志中没有任何内容。我尝试在/ etc / hosts中为sub.domain设置IP。这没什么区别。小文件成功发布。这些文件是由AJAX发布的。
有什么想法吗?
UPDATE :我已经在Firefox中对其进行了测试,并且可以正常工作。在Brave / Chrome中不起作用...
UPDATE2 :当我使用VPN时,在Brave / Chrome中运行良好...我待在公寓式酒店。我猜他们有一个疯狂的DNS服务器。