基于CentOS 7配置Nginx正向代理

Nginx是一款以輕量級、低內存開銷、支持緩存、支持反向代理,負載均衡,電子郵件服務而著稱。對于鮮為人知的是,它還可以作為一個簡單易用的正向代理服務器。本文簡要描述這個正向代理功能并給出演示,供大家參考。

有關Nginx的安裝請參考
CentOS 7下yum方式安裝Nginx
Nginx 概述及日常管理
Nginx基于IP,端口,域名配置虛擬主機

一、配置nginx正向代理服務端配置

演示環境
# more /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core) 當前主機名稱及ip
# hostname
centos7-router# ip addr|grep -inet|grep global
9: inet 172.24.8.254/24 brd 172.24.8.255 scope global eno16777728
15: inet 192.168.1.175/24 brd 192.168.1.255 scope global dynamic eno33554960當前主機的dns配置
# more /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.1.1nginx版本
# nginx -v
nginx version: nginx/1.12.2nginx正向代理配置
# vim /etc/nginx/conf.d/proxy.conf
server {listen 8080;            ##指定一個非缺省端口用于提供代理服務server_name localhost;resolver 192.168.1.1;    ##指定DNS服務器IPlocation / {      proxy_pass $scheme://$host$request_uri;proxy_set_header Host $http_host;##proxy_pass:設置代理服務器的協議和地址以及位置應映射到的可選URI。協議可指定http或https##proxy_set_header:與許字段重新定義或附加請求標頭傳遞給代理服務器proxy_buffers 256 4k;          ## Author : Leshamiproxy_max_temp_file_size 0;    ## Blog  : http://blog.csdn.net/leshami##proxy_buffers:為單個連接設置用于從代理服務器讀取響應的緩沖區個數和緩沖區大小##proxy_max_temp_file_size:禁用緩沖對臨時文件的響應proxy_connect_timeout 30;        ##代理連接超時時間proxy_cache_valid 200 302 10m;  ##為不同的響應代碼設置緩存時間proxy_cache_valid 301 1h;proxy_cache_valid any 1m;}
}# systemctl reload nginx.service
# ss -nltp|grep nginx
LISTEN 0 128 *:8080 *:* users:(("nginx",pid=110780,fd=10),("nginx",pid=19774,fd=10))
LISTEN 0 128 *:80 *:* users:(("nginx",pid=110780,fd=6),("nginx",pid=19774,fd=6))防火墻配置
# firewall-cmd --add-port=8080/tcp --permanent
# firewall-cmd --reload

二、客戶端配置

客戶端主機名及IP# hostnamecentos7-web.example.com# ip addr|grep inet|grep globalinet 172.24.8.128/24 brd 172.24.8.255 scope global eno16777728臨時設置當前環境變量http_proxy# export http_proxy=http://172.24.8.254:8080# curl -I http://www.baidu.comHTTP/1.1 200 OKServer: nginx/1.12.2Date: Tue, 24 Oct 2017 14:59:44 GMTContent-Type: text/htmlContent-Length: 277Connection: keep-aliveLast-Modified: Mon, 13 Jun 2016 02:50:26 GMTETag: "575e1f72-115"Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transformPragma: no-cacheAccept-Ranges: bytes清除http_proxy# unset http_proxy演示wget直接使用代理參數方式訪問網絡# wget -e "http_proxy=http://172.24.8.254:8080" www.baidu.com--2017-10-24 23:03:48-- http://www.baidu.com/Connecting to 172.24.8.254:8080... connected.Proxy request sent, awaiting response... 200 OKLength: 2381 (2.3K) [text/html]Saving to: ‘index.html’演示curl直接使用代理參數方式訪問網絡# curl -x http://172.24.8.254:8080 -I http://www.baidu.comHTTP/1.1 200 OKServer: nginx/1.12.2Date: Tue, 24 Oct 2017 15:07:39 GMTContent-Type: text/htmlContent-Length: 277Connection: keep-aliveLast-Modified: Mon, 13 Jun 2016 02:50:26 GMTETag: "575e1f72-115"Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transformPragma: no-cacheAccept-Ranges: bytes如果需要用戶名密碼,格式curl -x "http://user:pwd@host:port" www.baidu.com配置http_proxy以及ftp_proxy到應用程序,如yum代理配置
/etc/yum.conf里面增加proxy=proxy_addr:port。# unset http_proxy# cp /etc/yum.conf /etc/yum.conf.bk# echo "proxy=http://172.24.8.254:8080">>/etc/yum.conf# tail -1 /etc/yum.confproxy=http://172.24.8.254:8080# vim /etc/yum.repo.d/nginx.repo[nginx]name=nginx repobaseurl=http://nginx.org/packages/centos/7/$basearch/gpgcheck=0enabled=1# yum clean all# yum repolistLoaded plugins: fastestmirror, langpacksnginx | 2.9 kB 00:00:00nginx/x86_64/primary_db | 31 kB 00:00:01Determining fastest mirrorsrepo id repo name statusnginx/x86_64 nginx repo 90repolist: 90[root@centos7-web yum.repos.d]# yum makecacheLoaded plugins: fastestmirror, langpacksnginx | 2.9 kB 00:00:00(1/2): nginx/x86_64/other_db | 16 kB 00:00:00(2/2): nginx/x86_64/filelists_db | 39 kB 00:00:01Loading mirror speeds from cached hostfileMetadata Cache Created全局配置# cp /etc/skel/.bash_profile /etc/skel/.bash_profile.bk# vim /etc/skel/.bash_profileexport http_proxy=http://172.24.8.254:8080export https_proxy=http://172.24.8.254:8080# source /etc/skel/.bash_profile# env |grep httphttp_proxy=http://172.24.8.254:8080https_proxy=http://172.24.8.254:8080

DBA牛鵬社(SQL/NOSQL/LINUX)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/287345.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/287345.shtml
英文地址,請注明出處:http://en.pswp.cn/news/287345.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【ArcObject開發】實驗:ArcObject地圖開發基本操作

ArcObjects,是基于Microsoft COM技術所構建的一系列COM組件集,是在ArcGIS Desktop平臺基礎上的二次開發,開發語言為VBA(Vistal Basic for Application)。下面將AO開發的中的一系統基本操作做一簡單的說明。 下圖是功能主面板,有三個主要功能:地圖漫游、地圖制圖和創建元素…

Cocos2D中相關問題提問的幾個論壇

如果和SpriteBuilder相關可以到: http://forum.spritebuilder.com 提問. 如果是Cocos2D的問題,則可以到以下論壇詢問: http://forum.cocos2d-swift.org 你也可以到神人超多的stack overflow去提問: http://stackoverflow.com

T T[] toArray(T[] a);

<T> T[] toArray(T[] a); String[] a list.toArray(new String[list.length()]);轉載于:https://www.cnblogs.com/zjlog/p/5582322.html

[Python MoviePy 音視頻開發零基礎到實戰] 一、用6條代碼為你的視頻裁剪以及添加水印

一、MoviePy 安裝及配置 在 Python 有一個音視頻開發模塊 MoviePy&#xff0c;MoviePy 依賴于 FFmepg&#xff0c;使用 MoviePy 可以對音視頻進行編輯&#xff1b;例如視頻合成、視頻處理、視頻特效等。 在 Python 下直接使用 pip 工具進行安裝即可&#xff1a; pip install…

C# 使用ILogger接口編寫日志

.NET 有幾種不同的日志記錄和跟蹤工具&#xff0c;還有許多不同的第三方日志記錄程序。嘗試將一個應用程序從一種日志記錄技術更改為另一種日志記錄技術不是一件容易的事情&#xff0c;因為日志記錄 API 的使用分布在整個源代碼中。要使日志記錄獨立于任何日志記錄技術&#xf…

html頁面調用php常量,js中的常量變量以及html文檔三種引入js的方式

js 是基于事件驅動的異步單線程的腳本編程語言&#xff0c;它的全稱是 JavaScript&#xff0c;雖然里邊有個 java 字樣&#xff0c;但是和 java 編程語言一點關系都沒有。它是一種腳本語言&#xff0c;基于解釋器執行&#xff0c;它是邊解釋便執行的語言。瀏覽器控制臺 Console…

Android之ScrollView設置了高度(android:layout_height=“match_parent“)但里面的組件不能充滿問題

1 問題 寫了ScrollView控件&#xff0c;設置了高度(android:layout_height"match_parent")&#xff0c;但是里面的組件不能填充它&#xff0c;感覺就像ScrollView高度設置成了wrap_content 2 解決辦法 在ScrollView里面添加如下屬性即可 android:fillViewport&quo…

【ArcGIS風暴】基于ArcGIS空間分析功能研究渭河流域鎮駐地空間分布格局

【內容提要】:基于ArcGIS平臺,借助空間分析的方法,用空間平滑法(基于移動搜索法FAC和核估計)分析渭河流域鎮駐地的分布特征。 實驗過程 1. 加載數據 渭河流域的居民點(Resident_point.shp),DEM(等高線)、水系(線)、道路(線)空間數據,如下圖所示。

基于iSroll 5.0實現的上拉加載和下拉刷新插件

Updownload.js 基于iSroll 5.0實現的上拉加載和下拉刷新插件 移動端效果比較好&#xff0c;開發者工具打開后&#xff0c;需要刷新下頁面。 [演示地址:] https://chenyk2016.github.io/upDownLoad/demo.html [github地址:] https://github.com/chenyk2016/upDownLoad/ 效果圖 1…

[小白進] 大佬們學習為什么簡單?小白該如何學習?學歷不高如何找工作?副業很好賺?了解后少走彎路

一、前言 對于新手來說&#xff0c;最開始學習編程的難度不亞于學天書&#xff0c;那為什么有經驗的程序員在接觸一門新技術時能夠快速的上手并且完成一些需求的開發呢&#xff1f; 有些人可能看了這個問題覺得我在說廢話&#xff0c;“有經驗那不快那怎么才快&#xff1f;”…

Chrome如何離線安裝crx文件

2019獨角獸企業重金招聘Python工程師標準>>> 在Chrome瀏覽器的谷歌網上應用商店Chrome Web Store上點擊應用安裝按鈕「添加至Chrome」&#xff0c;變成下載文件。把下載文件一拖進瀏覽器也不能安裝。下面是如何離線安裝crx文件的方法&#xff1a; ①點擊Google Chr…

新坑

最近準備多看一些論文辣&#xff0c;先大體整理一下要看的東西淺談啟發式思想在信息學競賽中的應用后綴自動機及其應用淺談分塊在一類在線問題中的應用淺談圖的匹配算法及其應用Dp的一些優化技巧對置換群有關算法的初步研究線段樹在一類分治問題上的應用慢慢填吧轉載于:https:/…

【Envi風暴】Envi 5.1平臺下植被覆蓋度(VFC)的遙感估算

【導讀】植被覆蓋度是指植被(包括葉、莖、枝)在地面的垂直投影面積占統計區面積的百分比。常用的計算方法有:經驗模型法、植被指數法、像元分解模型法、FCK模型法、決策樹分類法和神經網絡法。本文利用像元二分模型計算植被覆蓋度(VFC)。 一、數據 張掖市Landsat TM影像(…

基于.NetCore開發博客項目 StarBlog - (6) 頁面開發之博客文章列表

系列文章基于.NetCore開發博客項目 StarBlog - (1) 為什么需要自己寫一個博客&#xff1f;基于.NetCore開發博客項目 StarBlog - (2) 環境準備和創建項目基于.NetCore開發博客項目 StarBlog - (3) 模型設計基于.NetCore開發博客項目 StarBlog - (4) markdown博客批量導入基于.N…

時間序列matlab代碼,MATLAB在時間序列建模預測及程序代碼.pdf

第二十四章 時間序列模型時間序列是按時間順序排列的、隨時間變化且相互關聯的數據序列。分析時間序列的方法構成數據分析的一個重要領域&#xff0c;即時間序列分析。時間序列根據所研究的依據不同&#xff0c;可有不同的分類。1&#xff0e;按所研究的對象的多少分&#xff0…

Android之安卓8.0版本以上手機開啟熱點提示Caller already has an active LocalOnlyHotspot request

1 問題 在Android8.0手機開啟了熱點,關閉頁面再次打開熱點, /*** 開啟Android8.0版本手機以上的熱點,熱點名字和密碼都是隨機的。*/fun initWifiApGreaterThanEight(context: Context) {if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {var wifiManager:WifiMana…

JavaScript基礎和js概括

js內容概括&#xff1a; Html 結構化 CSS 樣式 JavaScript 行為交互 01.JavaScript基礎 02.JavaScript操作BOM對象 03.JavaScript操作DOM對象 ***** 04.JavaScript的面向對象 -------------------------------------- 05.jQuery (js) .css .js 06.jQuery選擇器 …

《看聊天記錄都學不會C語言?太菜了吧》(12)循環有多容易?你看一眼就懷...

若是大一學子或者是真心想學習剛入門的小伙伴可以私聊我&#xff0c;若你是真心學習可以送你書籍&#xff0c;指導你學習&#xff0c;給予你目標方向的學習路線&#xff0c;無套路&#xff0c;博客為證。 本系列文章將會以通俗易懂的對話方式進行教學&#xff0c;對話中將涵蓋…

***ECharts圖表入門和最佳實踐

ECharts數據圖表系統&#xff1f; 5分鐘上手&#xff01; 【ECharts簡介】 ECharts開源來自百度商業前端數據可視化團隊&#xff0c;基于html5 Canvas&#xff0c;是一個純Javascript圖表庫&#xff0c;提供直觀&#xff0c;生動&#xff0c;可交互&#xff0c;可個性化定制的數…

【經典回放】多種語言系列數據結構線性表之一:順序表

一、實驗任務描述 建立線性表的ADT后,編程完成: 1 用C語言完成一個順序表結構; 2 為順序表完成追加、刪除、插入、查找的功能; 3 建立一個鏈表的結點; 4 完成鏈表的追加、刪除、插入功能; 5* 用C#完成一個結點的類; 6* C#完成鏈表的追加、刪除、插入功能的類; 7* C#編寫…