用途不多说,懂得人自然懂

我的服务器环境:Centos7  宝塔面板

方法一:利用Nginx来搭建HTTP正向代理

起初折腾老半天,请求代理就是不出数据,后来查了下,原来正常情况下,利用Nginx来搭建仅支持http代理访问,想要代理请求SSL的话,需要Nginx编译安装 ngx_http_proxy_connect_module 模块才行。以宝塔面板操作过一遍,已失败告终。等待继续研究。这里就简单说下仅支持http的代理搭建操作。


资料:

ngx_http_proxy_connect_module 模块

https://github.com/chobits/ngx_http_proxy_connect_module


1,宝塔面板,已安装Nginx (我这里用的是Nginx-1.16)

2,可以直接在Nginx配置里设置,也可以通过新建一个站点,在站点配置里设置(推荐,下面图也是通过新建一个站点来设置的),并设置一个带端口的ip地址(这里也是你要设置的代理端口)。


3,在 server{ ... } 类中相应位置添加如下代码。



 resolver 114.114.114.114;
    resolver_timeout 5s;
    
    location / {
        proxy_pass $scheme://$host$request_uri;
        proxy_set_header Host $http_host;
 
        proxy_buffers 256 4k;
        proxy_max_temp_file_size 0;
 
        proxy_connect_timeout 30;
 
        proxy_cache_valid 200 302 10m;
        proxy_cache_valid 301 1h;
        proxy_cache_valid any 1m;
    }





4,此方法已经在面板的安全组中加了端口放行。若是在Nginx配置中设置的话,需要另外添加



方法二:使用squid搭建自己专属的http/https正向代理服务器

由于我需要httos代理,所以方法一我就放弃了,网上找了下还有个方法就是使用squid来搭建了,测试支持http 和 https 代理访问。


测试呢,此方法相较于Nginx正向代理速度较慢些


1,shell 命令安装squid 


yum install -y squid
2,配置 squid 


    ①,会命令语句的,就直接用 vim 编辑下配置文件

    

vim /etc/squid/squid.conf


    ②,像我不太熟的,就到宝塔面板的文件处编辑了


3,配置端口,以及设置下 允许访问所有地址 为 allow (默认是deny,设置用户密码验证的话,保持默认deny


# 允许访问所有地址,默认是 deny,这个要主动改一下
http_access allow all

# Squid normally listens to port 3128
# 代理服务器端口
http_port 4399




4,启动代理


service squid start

5,其他shell命令


# 启动
service squid start
# 停止
service squid stop
# 重启
service squid restart
# 重新加载配置文件
service squid reload
# 查看是否正在运行
service squid status
全部命令:{start|stop|status|reload|force-reload|restart|condrestart|try-restart|probe}


6,到了这其实就算完成了,如果要设置用户密码验证的话,就继续。

(注意第3点处 http_access deny all)


这样你的代理就需要账号密码了