解决maven中央库访问过慢的问题--使用nginx做代理服务器

默认使用eclipse的maven自动下载jar时,经常出现下载失败的问题。网上都是架设私服并且修改maven的配置文件,但是感觉过于麻烦,想到如果能有一台稳定一点的服务器做中间代理访问,应该会好的多。

解决思路:架设一台代理服务器,专门代理maven的下载连接。


要做的事情就两个:

1.利用nginx做一个正向代理

2.修改本机hosts,将maven的下载域名添加到hosts文件中,对应的IP就是代理服务器的IP。


nginx正向代理配置:

server {
    listen 80;
    server_name  repo.maven.apache.org;

    resolver 8.8.8.8;
    location / {
        proxy_set_header Host $http_host;
        proxy_pass http://$http_host$request_uri;
    }
}


添加对应的ip到hosts文件,如:

xx.xx.xx.xx    repo.maven.apache.org

上面的xx.xx.xx.xx修改为具体的代理服务器外网地址。


注:如果服务器本身访问就比较慢,或者从服务器访问maven中央库下载连接比较慢,就算了吧不要折腾了。


其他:如果是使用的国内服务器如阿里云一类的,则需要域名使用已备案的域名否则请求就会被拦截,这个时候就要替换repo.maven.apache.org为自己的域名如repo.maven.xxx.xx。

nginx的配置如下:

server {
    listen 80;
    server_name  repo.maven.xxx.xx;

    resolver 8.8.8.8;
    location / {
        proxy_set_header Host repo.maven.apache.org;
        proxy_pass http://repo.maven.apache.org$request_uri;
    }
}


提交评论