我正在尝试配置以下环境:一个运行 apache 和 mod_proxy 的 VPS 来代理另一个在家里运行的服务器(后端)。我可以下载文件,但是当我尝试上传文件时,POST 请求失败并出现以下错误:
Proxy Error
The proxy server received an invalid response from an upstream server.
The proxy server could not handle the request POST /upload/upload.php.
Reason: Error reading from remote server
我不明白为什么它适用于低至 500 字节的文件。它很快!但是,当我尝试上传一个 4kb 的小文件时,需要很长时间才能出现错误。正如预期的那样,当直接访问后端而不使用 VPS 时,上传工作完美无缺。我为双方尝试了许多配置,也尝试增加超时,但我不认为这是要走的路。后端安装了 mod_access,当文件上传失败时它不会记录任何内容。
apache记录以下内容:
[Thu Nov 07 22:26:03.044309 2013] [proxy_http:error] [pid 9173] (70007)The timeout specified has expired: [client 177.148.252.99:54097] AH01102: error reading status line from remote server myhome.com, referer: http://frontend.com/upload/
[Thu Nov 07 22:26:03.044423 2013] [proxy:error] [pid 9173] [client 177.148.252.99:54097] AH00898: Error reading from remote server returned by /upload/upload.php, referer: http://frontend.com/upload/
VPS 正在运行 Apache 2.4.6,而在家中运行的服务器是带有 SSL 的 Lighttpd 1.4.32。
重定向到后端的虚拟主机配置如下:
<VirtualHost *:80>
ServerAdmin webmaster@frontend.com
ServerName frontend.com
ProxyPass / http://backend.com/
ProxyPassReverse / http://backend.com/
</VirtualHost>
前端: http: //frontend.com/upload/
后端: http ://backend.com/upload/
你有什么想法?