远程 nginx 代理服务器 - 无法从网站下载文件?
Remote nginx proxy server - unable to download file from website?
我已经使用 nginx 设置了一个远程反向代理服务器,这有助于限制我们网站的流量(最近有很多 DDOS 攻击)。该网站目前建立在旧版本的 Joomla 上。
当您尝试从网站下载文件时,它会重定向到主页,而不是按应有的方式推送文件下载。
一个例子 link 是:
http://domain.com/index.php?option=com_docman&task=doc_download&gid=4753
我的nginx配置如下
# Initialize Rate Limiting
limit_req_zone $binary_remote_addr zone=login:10m rate=1r/s;
# Do Proxy Cache
proxy_cache_path /data/nginx/cache keys_zone=one:10m loader_threshold=300 loader_files=200 max_size=200m;
include /etc/nginx/sites-enabled/*;
server {
listen 80;
server_name www.domain.com;
return 301 $scheme://domain.com$request_uri;
}
server {
listen 80;
proxy_cache one;
server_name domain.com;
access_log /var/www/proxy/log/nginx.access.log;
error_log /var/www/proxy/log/nginx_error.log debug;
location / {
# apply rate limiting
limit_req zone=login burst=5;
resolver 127.0.0.1;
include /etc/nginx/conf.d/proxy.conf;
proxy_pass http://$host$uri;
}
}
已解决问题....代理正在从请求中删除所有 request/get 变量。注意 "location" 指令下的变化
来自
proxy_pass http://$host$uri;
到
proxy_pass http://$host$request_uri;
我已经使用 nginx 设置了一个远程反向代理服务器,这有助于限制我们网站的流量(最近有很多 DDOS 攻击)。该网站目前建立在旧版本的 Joomla 上。
当您尝试从网站下载文件时,它会重定向到主页,而不是按应有的方式推送文件下载。
一个例子 link 是:
http://domain.com/index.php?option=com_docman&task=doc_download&gid=4753
我的nginx配置如下
# Initialize Rate Limiting
limit_req_zone $binary_remote_addr zone=login:10m rate=1r/s;
# Do Proxy Cache
proxy_cache_path /data/nginx/cache keys_zone=one:10m loader_threshold=300 loader_files=200 max_size=200m;
include /etc/nginx/sites-enabled/*;
server {
listen 80;
server_name www.domain.com;
return 301 $scheme://domain.com$request_uri;
}
server {
listen 80;
proxy_cache one;
server_name domain.com;
access_log /var/www/proxy/log/nginx.access.log;
error_log /var/www/proxy/log/nginx_error.log debug;
location / {
# apply rate limiting
limit_req zone=login burst=5;
resolver 127.0.0.1;
include /etc/nginx/conf.d/proxy.conf;
proxy_pass http://$host$uri;
}
}
已解决问题....代理正在从请求中删除所有 request/get 变量。注意 "location" 指令下的变化
来自
proxy_pass http://$host$uri;
到
proxy_pass http://$host$request_uri;