首页 > 系统相关 >linux设置http/https proxy及忽略proxy的方法

linux设置http/https proxy及忽略proxy的方法

时间:2023-09-18 12:05:07浏览次数:86  
标签:http 1.1 etc export proxy https

msys2设置网络代理

在文件 .bashrc 中添加

export http_proxy="proxy IP:port"

export http_proxy="192.168.0.1:8080"

export https_proxy="192.168.0.1:8080"

 

一,场景:

有些linux服务器处于内网,并且没有公网ip,故要想与外网进行http/https通信只能通过nat或者加proxy的方式。nat服务器有网段的限制,而http/https proxy代理则没有,使用起来也方便。

 

linux系统设置http/https proxy的方法,在/etc/bashrc或者/etc/profile中添加如下环境变量:

export http_proxy=http://1.1.1.1:8082
export https_proxy=http://1.1.1.1:8082
 

二,问题

使用如上配置http/https proxy的时候遇见两个问题:

1,本机去访问一个没有域名解析但是绑定hosts文件的域名的时候,导致访问失败

2,php-fpm中跑的php代码访问外网有域名解析的接口,访问失败

 

三,问题原因

1,应该是由于系统环境变量的优先级别高于/etc/hosts文件,导致本机去访问一个没有域名解析但是绑定hosts文件的域名的时候仍然走http/https代理,而代理server访问不到域名所绑定的ip(例如这个ip是内网ip,但是加的代理是公网的代理)从而导致访问失败。

2,php-fpm默认没有加载到系统的http/https proxy的环境变量设置,需要修改php-fpm的配置来解决问题。

 

 

四,问题解决

1,对那些没有域名解析通过绑定hosts文件来访问的域名,不让其走http/https代理

在/etc/bashrc或者/etc/profile中添加如下环境变量:

export no_proxy='a.test.com,127.0.0.1,2.2.2.2'
 

2,添加php-fpm关于env的如下配置,然后重启php-fpm即可:

 
env[http_proxy] = "http_proxy=http://1.1.1.1:8082" 
env[https_proxy] = "https_proxy=http://1.1.1.1:8082"
env[no_proxy] = "a.test.com,127.0.0.1,2.2.2.2"

 

五,扩展

1,用过的http/https正向proxy软件:

nginx

tinyproxy(简单好用,支持http/https协议)

squid(稳定简单好用,支持http/https协议)

 

2,squid 3.x正向proxy配置:

# cat /etc/squid/squid.conf
http_access allow all
http_port 8443
cache deny all

 

标签:http,1.1,etc,export,proxy,https
From: https://www.cnblogs.com/exmyth/p/17711501.html

相关文章

  • HTTP安全响应头配置之X-XSS-Protection
    目的首先我们来理解一下什么是“X-XSS-Protection”,从字面意思上看,就是浏览器内置的一种XSS防范措施。没错,这是HTTP的一个响应头字段,要开启很简单,在服务器的响应报文里加上这个字段即可。浏览器接收到这个字段则会启用对应的XSS防范模块。这个header主要是用来防止浏览器中的......
  • Trino HTTPS 与密码认证介绍与实战操作
    目录一、概述二、安装Trino三、配置HTTPS1)生成证书2)配置Trino3)修改Trinodocker-composeyaml文件4)开始部署Trino5)测试验证四、密码认证1)开启密码认证2)创建密码认证配置文件3)修改Trinodocker-composeyaml文件4)开始部署Trino5)测试验证五、权限控制(优雅下线)1)配置etc/ac......
  • 如何使用 jest 测试使用 axios 的 httpClient?
    要使用Jest测试使用axios的httpClient,您可以使用Jest提供的模拟功能来伪造对外部API的请求和响应。下面是一个示例测试的代码:首先,安装所需的依赖:npminstallaxiosaxios-mock-adapterjest--save-dev然后,创建一个名为httpService.test.js的测试文件,编写以下代码:importaxiosfrom......
  • 关于http
    http是一种超文本传输协议。文本:图片,视频,音频等等http端口:80https端口:443区别:http与服务器连接后只能获得一个web资源而https可以获得多个http请求数据的方式:get:请求能够携带的参数少,大小有限,会在浏览器的url栏中显示信息,不安全,高效post:携带的参数多,没有大小限制,不会在浏览......
  • 用Rust手把手编写一个Proxy(代理), 准备篇, 动手造轮子
    用Rust手把手编写一个Proxy(代理),准备篇,动手造轮子wmproxy将实现http/https代理,socks5代理,后续将实现websocket代理,内外网穿透等,会将实现过程分享出来,希望感兴趣的可以一起参与参与项目++wmproxy++gite:https://gitee.com/tickbh/wmproxygithub:https://git......
  • [Servlet/Tomcat] HttpServletRequest#getHeader(headerNameWithIgnoreCase)(获取heade
    1故事背景最近项目上有个业务需求,翻译成技术需求,即:将request.headers中的几个header入参转换成request.body(pageRequest)中的内置参数。为便于灵活配置,header参数名称是动态可配置的(存放于nacos配置中心),比如:sysCode、Accept-Language技术实现,主要就springmvc的org.spr......
  • 前端项目实战肆佰零玖react-admin和material ui-跨域方案http-proxy-middleware
    const{createProxyMiddleware}=require('http-proxy-middleware');module.exports=(app)=>{app.use(createProxyMiddleware('/postgrest',{target:'http://localhost:4000',changeOri......
  • Web阶段:第九章:Http协议
    Http协议a)什么是HTTP协议什么是协议?是双方,或多方,相互约定一起遵守的规则,叫协议。HTTP协议?http协议是客户端和服务器之间通信,客户端和服务器都需要遵守的数据格式,以及内容叫协议。协议中的内容又叫报文。b)请求的HTTP协议格式协议分为请求协议和响应协议请求协议GET请求1、请求......
  • 使用HTTP爬虫ip中的常见误区与解决方法
    在如今的互联网时代,为了保障个人隐私和实现匿名浏览,许多人选择使用HTTP爬虫ip。然而,由于缺乏了解和使用经验,常常会出现一些误区。本文将为大家介绍使用HTTP爬虫ip过程中常见的误区,并提供相应的解决方法,帮助大家更好地使用HTTP爬虫ip并提高网络安全性。误区一:爬虫ip的选择只看速度高......
  • 关于HTTP协议的概述
    HTTP的报文大概分为三大部分。第一部分是请求行,第二部分是请求的首部,第三部分才是请求的正文实体。POST往往是用来创建一个资源的,而PUT往往是用来修改一个资源的。Accept-Charset,表示客户端可以接受的字符集。防止传过来的是另外的字符集,从而导致出现乱码。在HTTP头里面,Cache......