Apache2.4+Tomcat9.0配置反向代理

所需工具,能看懂標題的人就知道要什麼工具(Apache2.4+Tomcat)

運行Tomcat需要jdk,學java的小夥伴都知道吧。

昨天學的知識。現在總結一下並把配置過程發出來。當個記錄以後自己忘了可以看。

在學校大佬講的太亂了,一直在debug。好多人都睡着了,大佬牛逼是牛逼,但是對於我們這些新手他一直在debug我們實在看不懂。

最後大佬弄出來了,給我們總結了一下。他講的過程我也沒怎麼聽。跟不上節奏,記不住。。。

隔天早上就開始上網找資料去配置,發現找的資料沒一個能配置成功的,亂七八糟。有些配置後apache都運行不了了。(寫文章的人能不能負點責,自己測試過沒問題後再發出來)

 

okok,進入主題。

先來了解一下什麼是反向代理?

當一個代理服務器能夠代理外部網絡上的主機,訪問內部網絡時,這種代理服務的方式稱爲反向代理服務

 所謂的反向代理就是你訪問的目標不是直接訪問的,中間是有一個代理給你轉發的。

那麼它的作用是什麼?

比如我們現在要訪問的站點端口是8080並不是默認的80,而又不想手動在後面輸入自己特定的端口8080。此時就可以用apache的反向代理映射到8080端口

而此時我們訪問的127.0.0.1 其實就是127.0.0.1:8080

 

這是一張簡單的流程圖。看圖就很容理解了(雖然畫的很醜)。

現在就開始配置。

--------------------------------------------------------------------------------------

首先tomcat發佈一個項目,但我們知道tomcat發佈後訪問的地址是localhost:8080或127.0.0.1:8080

爲了逼格高點。我們修改一下本機的host和tomcat的server.xml配置文件。

 host路徑:C:\Windows\System32\drivers\etc

server.xml路徑:Z:\apache-tomcat-9.0.0.M20\conf

如果是最高權限管理員還是沒法修改就把host文件複製到桌面,修改完後再覆蓋掉原來的host就可以了。

hsot添加:

127.0.0.1 baidu.com

不解釋那麼多了。注意訪問的時候不要加www

然後再修改server.xml文件添加一個元素就可以了

server.xm添加:

<Host name="baidu.com" autoDeploy="true" unpackWARs="true" appBase="e:\\baidu.com"> </Host>

在你的E盤創建有baidu.com文件夾把項目放裏面,啓動tomcat就可以用baidu.com訪問了。

--------------------------------------------------------------------------------------

這裏纔是配置apache的

其實用apache做反向代理的話只要稍微修改一下就好了,並不用像網上的一樣設置一大堆亂七八糟的。

 在網上看的配置都出錯,我就直接去apache官網看了一下。找到一段代碼複製過去就配置成功了。

<VirtualHost baidu.com:80>
ServerAdmin [email protected]
DocumentRoot "e:\\baidu.com"
ServerName baidu.com
ErrorLog "logs/baidu.com"
TransferLog "logs/baidu.com"
ProxyPreserveHost On
ProxyPass / http://baidu.com:8080/
ProxyPassReverse / http://baidu.com:8080/
</VirtualHost>

這是我用baidu.com這個例子改的,如果你的本地域名不是baidu.com換成你自己本地域名就好了

那麼這段代碼要添加到哪裏呢,放到httpd-vhosts.conf

httpd-vhosts.conf路徑:Z:\Apache24\conf\extra

添加到末尾就行了。

配置到這裏就差修改一個配置文件了:httpd.conf

httpd.conf路徑:Z:\Apache24\conf

找到這三句代碼,把註釋去掉就ok了

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
Include conf/extra/httpd-vhosts.conf

--------------------------------------------------------------------------------------

此時運行你的apache用baidu.com訪問是不是項目出來了,也不用在後面輸入8080端口了。

按步驟來肯定是可以成功的。

這裏提醒一下,直接訪問baidu.com後面不加任何項目名的話在baidu.com目錄下新建一個ROOT文件夾放一個名爲index的頁面進去就會自動找這個頁面顯示

最後看一下成功的效果是什麼樣的

 

想了解更多的話去官方文檔看吧。

2.4官網鏈接:鼠標點一下帶你飛過去

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章