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

简介:

一,场景:

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

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

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


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

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



二,问题原因

1,应该是由于环境变量的优先级别高于/etc/hosts文件,导致本机去访问一个没有域名解析但是绑定hosts文件的域名的时候仍然走http/https代理,而代理server访问不到要指定的域名从而导致访问失败。

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



三,问题解决

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

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

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

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

1
2
3
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协议)











本文转自 leejia1989 51CTO博客,原文链接:http://blog.51cto.com/leejia/2048270,如需转载请自行联系原作者
目录
相关文章
|
8月前
|
XML JSON API
识别这些API接口定义(http,https,api,RPC,webservice,Restful api ,OpenAPI)
本内容介绍了API相关的术语分类,包括传输协议(HTTP/HTTPS)、接口风格(RESTful、WebService、RPC)及开放程度(API、OpenAPI),帮助理解各类API的特点与应用场景。
|
8月前
|
Ubuntu 物联网 Linux
从零安装一个Linux操作系统几种方法,以Ubuntu18.04为例
一切就绪后,我们就可以安装操作系统了。当系统通过优盘引导起来之后,我们就可以看到跟虚拟机中一样的安装向导了。之后,大家按照虚拟机中的顺序安装即可。 好了,今天主要介绍了Ubuntu Server版操作系统的安装过程,关于如何使用该操作系统,及操作系统更深层的原理,还请关注本号及相关圈子。
|
8月前
|
Android开发 Kotlin
|
8月前
|
缓存 监控 Linux
Linux系统清理缓存(buff/cache)的有效方法。
总结而言,在大多数情形下你不必担心Linux中buffer与cache占用过多内存在影响到其他程序运行;因为当程序请求更多内存在没有足够可用资源时,Linux会自行调整其占有量。只有当你明确知道当前环境与需求并希望立即回收这部分资源给即将运行重负载任务之前才考虑上述方法去主动干预。
2202 10
|
8月前
|
Ubuntu Linux 图形学
推广与体验Ubuntu Linux的便捷方法
如果你的朋友或家人对尝试Linux感兴趣,但希望在安装之前先体验一下,你可以分享以下链接给他们:Ubuntu在线导览。通过这个链接,他们可以在任何地方轻松体验Ubuntu,无需安装即可深入了解这个流行的操作系统。
|
8月前
|
XML 缓存 Linux
在Linux环境下解决Visual Studio Code字体显示异常和字体替换方法。
解决Linux下VS Code字体显示异常,需要对Linux字体渲染机制有所理解,并对VS Code的配置选项进行合理设置。替换字体时则要通过系统字体配置或VS Code设置来完成。通过上述方法,可以有效地解决字体显示问题,从而提升代码编辑的视觉体验。
1223 0
|
网络协议 Linux C语言
Linux下搭建简易的HTTP服务器完成图片显示
这篇文章作为Linux下socket(TCP)网络编程的练习,使用C语言代码搭建一个简单的HTTP服务器,完成与浏览器之间的交互,最终在浏览器上显示一张图片;通过这个例子可以巩固socket里多线程使用,也可以方便学习了解HTTP协议。
497 0
|
7月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
816 1
二、Linux文本处理与文件操作核心命令
|
7月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
473 137
|
7月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
1281 59
下一篇
开通oss服务