浏览 2.5k
我想配置的效果是,我的请求先经过nginx的反向代理,在这个部分重写url,再转发到本地的另一个代理去访问。
配置如下
http {
access_log objs/access.log;
error_log objs/error.log debug;
rewrite_log on;
server {
listen 8080;
server_name localhost;
location ~ ^.*(\.dlf|\.DLF).* {
rewrite ^(.*)/i2p/(.+)\.(dlf|DLF)(.*) http://$2.i2p$4 break;
proxy_pass http://127.0.0.1:4444;
proxy_set_header Host "isitup.i2p";
}
location / {
proxy_pass http://127.0.0.1:5000;
}
}
}想做到的效果举例
客户端访问 http://127.0.0.1:8080/i2p/xxxx.dlf
nginx收到后将url修改成 http://xxxx.i2p 然后转发给127.0.0.1:4444的代理
127.0.0.1:4444中的服务是一个i2p代理,能够帮助我访问i2p的网站。
测试如下
curl -x 127.0.0.1:4444 isitup.i2p
能成功访问isitup.i2p网站
如果走nginx则会失败
curl 127.0.0.1:8080/i2p/isitup.i2p会返回400 bad request

按点赞数排序
按时间排序
网络延迟,负载均衡,连接池都可能会有这种问题,如果是连接池耗尽,新请求就有可能会堆积并等待处理,导致数据丢失和混乱,调整一下大小就可以,或者是某部分后端服务器负载较重,而其他比较轻,也会导致请求堆积和数据混乱。
微信公众号
加入微信群