使用nginx做正向代理

背景

由于考虑成本不浪费资源,在购买服务器的时候特意只购买一台带有带宽(可访问公网),而其他机器无法访问公网。然而在实际使用中难免部署项目的时候 发现其实大多数情况下我们的任何一台server都还是需要公网服务的,例如:安装软件(mysql,php)这样的东西。如果使用源码编译的话,则会显的过于复杂 也容易出现问题。下面我们将使用nginx正向代理特性处理这一问题。

正向代理

安装nginx

这里需要强调下, nginx安装在能够访问公网的机器上 。并进行如下配置:
<!--http请求-->
server {
        listen       9090;
    resolver     114.114.114.114;
        location / {
    root html;
    index index.html index.htm;
    proxy_pass $scheme://$host$request_uri;
    proxy_set_header HOST $http_host;
    proxy_buffers 256 4k;
    proxy_max_temp_file_size 0k;
    proxy_connect_timeout 30;
    proxy_send_timeout 60;
    proxy_read_timeout 60;
    proxy_next_upstream error timeout invalid_header http_502;
        }
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
    root html;
    }
    }
<!--处理https请求-->
server{
    resolver 114.114.114.114;
    listen 9443;
    location / {
    root html;
    index index.html index.htm;
    proxy_pass https://$host$request_uri;
    proxy_buffers 256 4k;
    proxy_max_temp_file_size 0k;
    proxy_connect_timeout 30;
    proxy_send_timeout 60;
    proxy_read_timeout 60;
    proxy_next_upstream error timeout invalid_header http_502;
    }
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
    root html;
    }
}

nginx重启

nginx -s reload

配置代理

类似于我们配置环境变量一样,在~/.bashrc里添加以下内容.其中username,pwd,ip分别指的是 以上配置nginx可以访问公网的机器的信息
export http_proxy=http://username:pwd@ip:9090/
export ftp_proxy=http://username:pwd@ip:9090/

使得配置生效

source ~/.bashrc

配置yum源代理

在yum的配置文件(/etc/yum.conf)里加入以下内容
proxy=http://username:pwd@ip:9090
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不爱运动的跑者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值