精品免费在线观看-精品欧美-精品欧美成人bd高清在线观看-精品欧美高清不卡在线-精品欧美日韩一区二区

17站長網(wǎng)

17站長網(wǎng) 首頁 網(wǎng)站 服務器 查看內(nèi)容

詳解Tomcat Web應用綁定域名的幾種方式

2022-10-25 14:58| 查看: 2166 |來源: 互聯(lián)網(wǎng)

當我們將應用部署到 tomcat 之后,默認是通過 http://codebelief.com:8080/myapp/ 這種形式來訪問的。 很顯然,這只適用于調(diào)試的情況,在實際使用時,我們通常會為根據(jù)需要,為應用綁定更加便于訪問的路徑。 一般

當我們將應用部署到 tomcat 之后,默認是通過 http://codebelief.com:8080/myapp/ 這種形式來訪問的。

很顯然,這只適用于調(diào)試的情況,在實際使用時,我們通常會為根據(jù)需要,為應用綁定更加便于訪問的路徑。

一般來說,我們不直接將 tomcat 運行在 80 端口,更安全的做法是在 80 端口運行一個 http server,然后通過反向代理轉(zhuǎn)發(fā)到 8080 端口。

以下的幾種方式均基于反向代理實現(xiàn),需要對應的反向代理服務程序,這里使用的是 apache,也可以用 nginx 實現(xiàn),大同小異。

首先,需要確保開啟 mod_proxy 模塊:

$ sudo a2enmod proxy $ sudo a2enmod proxy_http $ service apache2 restart

通過 80 端口訪問

即通過 http://codebelief.com/myapp/ 的形式訪問 web 應用。

我們在 80 端口運行 apache,由 apache 處理 80 端口的請求,然后將所有請求轉(zhuǎn)發(fā)給運行在 8080 端口的 tomcat 處理,這樣就無需修改 tomcat 的運行端口,另一方面也確保了安全性。

在 /etc/apache2/sites-available/ 目錄下添加配置文件 tomcat.conf:

ServerName codebelief.com ProxyRequests On ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/

然后將該配置文件通過軟鏈接放入 /etc/apache2/sites-enabled/ 目錄以啟用該配置。

可以使用以下命令:

$ ln -s tomcat.conf /etc/apache2/sites-enabled/tomcat.conf

也可以使用 apache 自帶的命令:

$ a2ensite tomcat

最后重新加載 apache 配置文件:

$ service apache2 reload

完成。

通過子域名訪問

即通過 http://app.codebelief.com/myapp/ 訪問 web 應用。

與上述配置過程類似,依然采用反向代理的方式將子域名請求轉(zhuǎn)發(fā)給 8080 端口。

只需將 tomcat.conf 文件改成:

ServerName codebelief.com ServerAlias app.codebelief.com ProxyRequests On ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/

同樣,將該文件鏈接到 sites-enabled 目錄下,然后 reload 配置即可。

域名根路徑訪問應用

即直接通過 http://codebelief.com 的形式訪問 myapp,而無需加應用所在目錄名。

tomcat.conf 文件內(nèi)容如下,其它步驟一樣。

ServerName codebelief.com ServerAlias app.codebelief.com ProxyRequests On ProxyPass / http://localhost:8080/myapp/ ProxyPassReverse / http://localhost:8080/myapp/

這樣,就可以通過 http://codebelief.com 或者 http://app.codebelief.com 直接訪問 myapp 了。

使用根路徑直接訪問應用,還有另一種實現(xiàn)方式。

這種方式不需要 apache 或 nginx 等反向代理服務程序,但是如果要使用這種方式,最好是 tomcat 只運行單個 web 應用,避免一個 web 應用的內(nèi)部路徑與其它 web 應用的路徑?jīng)_突。

我們這里不考慮端口號的修改,使用默認的 8080 端口。

目標是通過 http://codebelief.com:8080 來訪問 myapp。

修改 tomcat/conf/server.xml 文件

標簽內(nèi)添加下面的主機配置:

app.codebelief.com

Host 標簽中的 name 表明該配置用于處理來自 codebelief.com 主機的請求。注意,name 必須為一級域名或 ip 地址。

要使得子域名 app.codebelief.com 也能使用該配置,即根路徑直接訪問 myapp,那么需要使用 Alias 標簽綁定該子域名。

Context 標簽內(nèi)的 path="" 表示直接通過根路徑訪問, docBase="myapp" 表示根路徑默認訪問的是 myapp 應用。

對外屏蔽 8080 端口

當我們使用不包含端口號的形式訪問 myapp 時,我們還可以對外屏蔽 8080 端口,即必須通過 80 端口由 apache 轉(zhuǎn)發(fā)給 tomcat。

要使外部不能直接訪問 8080 端口,可以在 iptables 中添加對應規(guī)則,有關 iptables 的具體原理和用法,可以自行參考相關文章。

在這里,只需要執(zhí)行以下命令:

$ iptables -t mangle -A PREROUTING -p tcp --dport 8080 -j DROP

該命令會在 mangle 表中的 PREROUTING 鏈添加指定規(guī)則,即對來自 8080 端口的 tcp 連接,直接做丟棄處理。

這樣就可以禁止外部通過 8080 端口訪問 tomcat 應用了。

本文最后更新于 2022-10-25 14:58,某些文章具有時效性,若有錯誤或已失效,請在網(wǎng)站留言或聯(lián)系站長:[email protected]
·END·
站長網(wǎng)微信號:w17tui,關注站長、創(chuàng)業(yè)、關注互聯(lián)網(wǎng)人 - 互聯(lián)網(wǎng)創(chuàng)業(yè)者營銷服務中心

免責聲明:本站部分文章和圖片均來自用戶投稿和網(wǎng)絡收集,旨在傳播知識,文章和圖片版權歸原作者及原出處所有,僅供學習與參考,請勿用于商業(yè)用途,如果損害了您的權利,請聯(lián)系我們及時修正或刪除。謝謝!

17站長網(wǎng)微信二維碼

始終以前瞻性的眼光聚焦站長、創(chuàng)業(yè)、互聯(lián)網(wǎng)等領域,為您提供最新最全的互聯(lián)網(wǎng)資訊,幫助站長轉(zhuǎn)型升級,為互聯(lián)網(wǎng)創(chuàng)業(yè)者提供更加優(yōu)質(zhì)的創(chuàng)業(yè)信息和品牌營銷服務,與站長一起進步!讓互聯(lián)網(wǎng)創(chuàng)業(yè)者不再孤獨!

掃一掃,關注站長網(wǎng)微信

大家都在看

熱門排行

    最近更新

      返回頂部
      主站蜘蛛池模板: 在线观看视频色 | 国产三级精品视频 | 亚洲欧美日产综合一区二区三区 | 激情婷婷成人亚洲综合 | 欧美成人免费videos | 亚洲视频1区 | 黑人性视频做爰全过程视频 | 国产网站免费视频 | 欧美日韩高清一本大道免费 | 在线观看二区三区午夜 | 欧美成人亚洲国产精品 | 中文第一页| 国产美女在线播放 | 热re99久久国产精品 | 永久免费在线观看视频 | 目韩一区二区三区系列片丶 | 91sao在线看片水片 | 久久99精品久久久久久国产越南 | 国产精品1区 2区 3区 | heyzo国产亚洲高清 | 久久综合五月婷婷 | 亚洲第九十九页 | 精品亚洲视频在线观看 | 免费国产在线视频 | 99久久免费国产香蕉麻豆 | 黄色网在线播放 | 亚洲精品色婷婷在线影院麻豆 | 亚洲精品一区二区四季 | 黄色一级毛片网站 | 一级黄色短视频 | 99久久久国产精品免费播放器 | 久热这里只精品99re8久 | 91久久夜色精品国产网站 | 伊人久久综在合线亚洲91 | 日本老妇成熟 | 黄色免费片 | 亚洲高清毛片 | 亚洲国产欧美自拍 | www黄色网址 | 日本成人影院 | 国产大长吊 |