最近在折騰 Tomcat 的時候,遇到了一個需求:需要在一臺服務器上跑多個網站,每個網站用不同的域名訪問。乍一看,這不就是虛擬主機的活兒嘛!但對 Tomcat 的虛擬主機配置不太熟,查了不少資料,踩了幾個坑,終于搞定了。于是就想著把整個過程整理下來,分享給有類似需求的小伙伴,希望能少走彎路。
這篇文章主要講的是在 CentOS 系統上,如何一步步配置 Tomcat 的虛擬主機。內容很簡單,從目錄準備到配置文件修改,再到重啟和測試,手把手帶你搞定。
1. 準備虛擬主機的目錄和內容
為每個虛擬主機創建獨立的目錄,并放置測試文件。
創建目錄
mkdir -p /var/www/site1 mkdir -p /var/www/site2
添加測試文件
echo "Welcome to Site 1" > /var/www/site1/index.html echo "Welcome to Site 2" > /var/www/site2/index.html
2. 修改 Tomcat 的server.xml配置文件
編輯 Tomcat 的server.xml文件:
`vim$CATALINA_HOME/conf/server.xml`
找到
修改后的配置示例:
配置說明
?name:虛擬主機的域名,例如www.site1.com和www.site2.com。
?appBase:設置為空字符串"",因為我們直接指定了docBase。 對應應用部署的目錄
?docBase:虛擬主機的文檔根目錄,分別為/var/www/site1和/var/www/site2。
?path:設置為"",表示虛擬主機的根路徑(/)。
補充說明:Engine節點 是核心組件之一 用于管理虛擬主機 下面可以定義多個host節點
訪問測試
4. 重啟 Tomcat
重新啟動 Tomcat 以應用新的配置:
$CATALINA_HOME/bin/shutdown.sh $CATALINA_HOME/bin/startup.sh
5. 測試虛擬主機
在瀏覽器中訪問以下地址:
訪問http://www.site1.com:8080,應顯示Welcome to Site 1。
訪問http://www.site2.com:8080,應顯示Welcome to Site 2。
注意事項
1. 防火墻配置 如果您的 Tomcat 運行在非默認端口(如 80),需要確保防火墻允許該端口的流量。
firewall-cmd --zone=public --add-port=8080/tcp --permanent firewall-cmd --reload
1. DNS 配置 如果在生產環境中使用,需要在 DNS 服務器中配置www.site1.com和www.site2.com的域名解析到服務器的公網 IP。
2. 生產環境建議
?
? 使用 Apache 或 Nginx 作為反向代理,將域名請求轉發到 Tomcat 的虛擬主機配置 HTTPS 以保證安全性。
總結
搞定之后回頭看,其實配置 Tomcat 虛擬主機并不難,關鍵是要細心,別漏掉小細節。比如:
? 目錄路徑:一定要確認docBase指向的目錄存在,并且權限設置正確。
? 防火墻:別忘了開放 Tomcat 的端口,不然你本地測得好好的,外網卻訪問不了。
? DNS 配置:如果是線上環境,域名解析必須指向服務器的公網 IP。
? 安全性:生產環境建議用 Nginx 或 Apache 做反向代理,別直接暴露 Tomcat,順便把 HTTPS 配置上。
鏈接:https://blog.csdn.net/jxjdhdnd/article/details/146340625?spm=1001.2014.3001.5502
-
服務器
+關注
關注
13文章
9730瀏覽量
87472 -
虛擬主機
+關注
關注
0文章
71瀏覽量
11674 -
CentOS
+關注
關注
0文章
83瀏覽量
14183
原文標題:Tomcat虛擬主機配置詳解:Centos環境下多域名部署(詳細教程!)
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
什么是獨立IP虛擬主機?
虛擬主機管理系統
如何選擇虛擬主機
虛擬主機是什么_虛擬主機詳細介紹
虛擬主機用途_虛擬主機使用方法步驟_虛擬主機如何綁定域名
購買虛擬主機后如何使用_免費虛擬主機怎么搭建網站
購買虛擬主機7大法則——哪里買國內虛擬主機,用什么系統好
虛擬主機的硬件條件是什么_虛擬主機怎么用
虛擬主機到底是什么?為什么要使用虛擬主機
虛擬主機能做什么_虛擬主機的優缺點
虛擬主機怎樣暫時關閉_虛擬主機如何使用
虛擬主機問題之ASPnet虛擬主機-連接access數據庫例程

評論