JavaWeb基礎(二)-Tomcat服務器安裝和基本配置

服務器

所謂服務器其實是電腦, 只不過服務器比我們?nèi)粘J褂玫膫€人計算機配置方面強悍很多。而裝在服務器上的軟件構(gòu)成了服務器能對外提供的功能。我們說Mysql服務器指的是這臺電腦主機上裝著MySQL數(shù)據(jù)庫軟件,能對外提供數(shù)據(jù)庫服務。如果以軟件硬件來分類,可以分為軟件服務器硬件服務器.

Java服務器分類

  • http服務器。負責渲染靜態(tài)網(wǎng)頁.如 apache服務器
  • web服務器。實現(xiàn)部分JavaEE規(guī)范,輕量級。如 Tomcat(解析JSP最快的服務器)、Jetty
  • 應用服務器。實現(xiàn)全部JavaEE規(guī)范,重量級。如Weblogic、JBOSS

容器

什么叫容器?所謂的容器是為程序的運行提供環(huán)境所需要的環(huán)境
所以Servlet容器就是為Servlet程序提供可以運行的環(huán)境.

Tomcat容器

Tomcat的目錄結(jié)構(gòu)

Tomcat的目錄結(jié)構(gòu)
  • bin目錄: 存放Tomcat的工具、啟動和關閉腳本.
  • conf目錄: 存放Tomcat的配置文件
  • lib目錄: Tomcat的核心jar包和依賴的jar包
  • work目錄: 裝JSP翻譯成Java文件的代碼
  • logs目錄: 存儲日志的目錄,可以用來排查異常問題
  • temp目錄: 臨時文件目錄
  • webapps目錄: 部署目錄(只有手動啟動tomcat才是部署在這, eclipse默認不是部署在這)

Tomcat的安裝

  • 安裝包的選擇
    apache官網(wǎng)下載.以tomcat7為例.
下載
  • 環(huán)境變量的配置
    無論什么系統(tǒng),都需要配置JAVA_HOME環(huán)境變量.tomcat啟動的時候依賴于該變量取尋找JDK.以MAC系統(tǒng)為例配置環(huán)境變量.如果你用的是默認的終端,不是zsh之類的第三方,那么直接編輯.bash_profile這個文件加入如下幾行即可.

export JAVA_7_HOME="/usr/libexec/java_home -v 1.7"
export JAVA_8_HOME="/usr/libexec/java_home -v 1.8"
export JAVA_HOME=$JAVA_8_HOME

原理

其中/usr/libexec/java_home是`Mac OS X 10.5之后`引入.專門用來管理JAVA_HOME的程序.
我們指定版本號即可查詢到對應版本的JAVA_HOME
  • 啟動tomcat,并用瀏覽器訪問驗證
    使用startup.sh腳本啟動.如下命令.
啟動tomcat

瀏覽器進行驗證.點擊打開http://127.0.0.1:8080

Tomcat安裝常見錯誤

  • 報錯Parse Fatal Error at line 1 column7. 原因: xml文件前加空格報錯, 因為這導致不能正確解析xml.解決辦法刪除空格
  • Tomcat啟動成功,訪問相關資源報404 Not Found.原因: 資源路徑有錯或者資源就不存在.解決方法寫對路徑.
  • java.net.BindException: Address already in use: JVM Bind.原因:端口沖突被占用.解決辦法, 關閉占用端口的進程
  • 在xml配置文件中使用中文,應該使用UTF-8編碼.

Tomcat的常用配置

Tomcat的配置文件都在conf目錄下, 主要包括server.xml配置服務器tomcat-users.xml配置安全權(quán)限虛擬主機服務

  • 端口配置
    開打server.xml, 搜索定位8080關鍵字.會定位到如下內(nèi)容。8080即tomcat容器的默認端口.我們可以更改成任意合法端口,只要該端口不在(0---1023)之間。
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
  • 權(quán)限配置和服務配置
權(quán)限配置
  • 如上圖,點擊左邊三列Server Status, Manager AppHost Manager分別對應三項功能,依次是服務器狀態(tài)信息, WebApp管理、虛擬主機管理。這些在剛裝完tomcat是沒法正常訪問.因為沒有相應的權(quán)限.
  • tomcat配置權(quán)限,是以角色的概念存在, 角色擁有權(quán)限.我們需要先添加角色.在添加用戶,給用戶配置角色.

這些配置,tomcat都會在第一次還沒配置前, 給出提示如何配置.

為配置權(quán)限前, 嘗試登入給出的提示

如下配置.配置了訪問的用戶名,密碼.已經(jīng)擁有的權(quán)限(查看容器信息、管理容器中的app、管理虛擬主機權(quán)限)

  <role rolename="manager-gui"/>
  <role rolename="admin-gui"/>
  <role rolename="admin-script"/>
  <user username="root" password="123456" roles="manager-gui,admin-gui,admin-script"/>
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容