记一次linux配置代理

之前这段代码是可以抓到数据的

$url = 'https://huodong.x.com/aa/bb?v=2&flsrc=alipay_mini_app';
$refer = 'https://2018082861122674.x.y-eco.com/2018082861122674/0.2.2007272036.42/index.html#pages/buyZero/buyZero?scene_id=1631';
$ua = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/17C54 Ariver/1.0.11 AliApp(AP/10.1.90.8000) Nebula WK RVKType(0) AlipayDefined(nt:WIFI,ws:375|603|2.0) AlipayClient/10.1.90.8000 Language/zh-Hans NebulaX/1.0.0';
$x = shell_exec('curl -H "User-Agent: '.$ua.'" -H "Referer: '.$refer.'" --compressed "'.$url.'"');
$arr = json_decode($x, true);

也许是执行频繁导致IP被封了,所以就像自己用另外一台服务器代理一下

安装tinyproxy

yum install tinyproxy

vi /etc/tinyproxy/tinyproxy.conf

Port 8888 //预设是8888 Port,你可以更改

Allow 127.0.0.1 //将127.0.0.1改成你自己的IP

//Allow 192.168.1.0/24    #表示一个网络的IP

//例如你的IP 是1.2.3.4,你改成Allow 1.2.3.4,那只有你才可以连上这个Proxy

//若你想任何IP都可以连到Proxy在Allow前面打#注释

以上代码源于网络,我也是这样配置的
Allow给的IP一定给对,我就是因为这个写错,导致一直不成功

启动与重启

/bin/systemctl restart tinyproxy.service

阿里云服务器新增一个安全组规则,把代理的端口放进去
如果使用了宝塔,也需要再 安全-加入端口
如果出错最好通过代理日志 查看,

tail -f /var/log/tinyproxy/tinyproxy.log

更改PHP 代码

$x = shell_exec('curl --proxy 139.198.151.71:8800 -H "User-Agent: '.$ua.'" -H "Referer: '.$refer.'" --compressed "'.$url.'"');

你可能感兴趣的:(服务端,PHP,tinyproxy)