WEB服務器搭建(Apahce+Tomcat)

一、 軟件安裝

  1. 安裝Apache
     配置yum源,安裝軟件
    yum install zlib zlib-devel
    yum install httpd
  2. 安裝Tomcat
      在官方網站http://tomcat.apache.org/ 下載tomcat的二進制文件。這次使用的tomcat版本是7.0.92,下載後的壓縮包文件名爲apache-tomcat-7.0.92.tar.gz,把此安裝包傳到服務器,解壓到/usr/local目錄下,即可完成tomcat的安裝。
  3. 安裝JDK
      在tomcat的運行環境下,JDK是必不可少的,tomcat只是一個Servlet/JSP容器,需要JDK提供底層的操作。
      下載JDK軟件,此次下載的版本是JDK1.8,安裝包名爲jdk-8u191-linux-x64.gz,將安裝包傳到服務器並解壓到/usr/local目錄下。
    通過命令可以查看JDK版本:
    [root@test ~]#  /usr/local/jdk1.8.0_191/bin/java -version
    java version "1.8.0_191"
    Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
    Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
  4. 安裝JK模塊
      下載JK源碼包,此次下載的版本是1.2.46,源碼包文件名爲tomcat-connectors-1.2.46-src.tar.gz,將此安裝包解壓後也放到/usr/local目錄下。
      安裝步驟如下:
[root@test native]# yum install libtool autoconf           #yum安裝所需要的依賴庫文件
[root@test native]# ./buildconf.sh
[root@test native]# ./configure 
[root@test native]# make
[root@test native]# make install

  此時默認會在apache安裝目錄下的modules目錄下生成一個mod_jk.so文件。如果沒有,需要手動拷貝。

二、 Apache與Tomcat配置

  1. Apache的配置
    Apache主要配置文件爲http.conf,此時編輯此文件
    [root@test www]# vim /etc/httpd/conf/httpd.conf

    主要配置如下:

    ServerRoot "/etc/httpd"           #用於指定守護進程httpd的運行目錄
    Timeout   300                 #定義客戶端與服務端程序連接的超時間隔
    Listen 80                      #監聽端口
    LoadModule jk_module modules/mod_jk.so   #加載jk模塊
    User apache
    Group apache                   #設定httpd的用戶和組
    DocumentRoot "/var/www/html"    #指定網頁的存放路徑,默認到此路徑尋找網頁
    ServerAdmin root@localhost       #當Apache出現問題時,會發信到這個郵箱
    ErrorLog "logs/error_log"          #指定錯誤日誌存放的位置
JkWorkersFile /etc/httpd/conf/workers.properties
JkMountFile /etc/httpd/conf/uriworkermap.properties
JkLogFile  /etc/httpd/logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"

##針對JK連接器屬性的設置。其中1~2行指定Tomcat workers配置文件以及對網頁的過濾規則,第3行指定JK模塊的日誌輸出文件,第4行指定日誌的輸出級別,最後一行指定日誌的輸出格式。

NameVirtualHost *:80      

#表示開啓虛擬主機。如果開啓虛擬主機,上面設置的DocumentRoot指令配置失效,以虛擬主機中的DocumentRoot爲主。

<VirtualHost *:80>
   ServerAdmin [email protected]
   DocumentRoot /webdata/www
   ServerName test
   ErrorLog logs/error_log
   CustomLog logs/access_log common
   JkMountFile conf/uriworkermap.properties

 <Directory "/webdata/www">
  Options -Indexes +FollowSymlinks
  AllowOverride All
  Require all granted
 </Directory>
</VirtualHost>

#上面這段信息添加一個虛擬主機,其中不同的虛擬主機通過不同的ServerName來區分。每個虛擬主機用<VirtualHost>標籤設置。
#ServerAdmin:表示虛擬主機的管理員郵箱地址
#DocumentRoot:表示虛擬主機站點文件路徑
#ServerName:虛擬主機的站點域名
#ErrorLog:指定虛擬主機站點錯誤日誌輸出文件
#CustomLog:指定虛擬主機站點訪問日誌輸出文件
#JkMountFile:指定對此虛擬主機的URL映射文件

  1. Tomacat的配置
    server.xml是Tomcat的主要配置文件。爲了支持與Apache的整合,在Tomcat中也需要配置虛擬主機。在server.xml配置文件中找到默認的<Host>標籤,在此標籤結尾,添加如下內容:
    <Host name="hcd" debug="0" appBase="/webdata/www" unpackWARs="true">
    <Context path="" docBase="" debug="1"/>

    #name:指定虛擬主機名字
    #debug:指定日誌輸出級別
    #appBase:存放Web應用程序的基本目錄
    #unpackWARs:Tomcat是否會將WAR文件解壓,true表示解壓運行裏面的應用程序;false表示不解壓直接運行。

  2. 配置Tomcat啓動腳本
     tomcat在啓動的時候會去查找JDK的安裝位置,因此需要配置系統環境變量。
    在catalina.sh腳本中添加如下內容:
    JAVA_HOME=/usr/local/jdk1.8.0_191
    export JAVA_HOME

    並在環境變量文件中添加如下內容:

    export JAVA_HOME=/usr/local/jdk1.8.0_191
  3. 創建Tomcat worker
    定義Tomcat worker的方法是在apache的conf目錄下編寫一個名爲workers.properties的屬性文件,使其作爲Apache的插件來發揮作用。編寫內容如下:
    worker.list=tomcat1                #定義名字
    worker.tomcat1.port=8009          # 主機監控的端口
    worker.tomcat1.host=localhost       #監聽AJP13請求的Tomcat  worker主機地址
    worker.tomcat1.type=ajp13         #定義work類型的格式
    worker.tomcat1.lbfactor=1    #當tomcat用作負載均衡是,使用此屬性,表示負載均衡權值
  4. URL過濾規則文件uriworkermap.properties
    用來指定哪些URL由Tomcat來處理,下面是映射文件的內容:
    /*=tomcat1
    !/*.jpg=tomcat1
    !/*.gif=tomcat1
    !/*.png=tomcat1
    !/*.bmp=tomcat1
    !/*.html=tomcat1
    !/*.htm=tomcat1
    !/*.swf=tomcat1
    !/*.css=tomcat1
    !/*.js=tomcat1

    /=tomcat1表示所有的請求都交給tomcat1處理,
    !/
    .png=tomcat1表示在根目錄下,所有以“*.png”結尾的文件都不有JK處理,也就是讓Apache處理,其它類似。

    三. 測試
    這裏將/usr/local/tomcat-7.0.92/webapps/ROOT/目錄下的所有文件和/usr/local/tomcat-7.0.92/webapps/docs目錄拷貝到/webdata/www/目錄下,然後啓動Apache和tomcat服務:

    [root@test conf]# /usr/local/tomcat-7.0.92/bin/startup.sh 
    [root@test conf]# systemctl start httpd

    啓動完畢後,在瀏覽器輸入服務器IP地址,如果能訪問tomcat默認的JSP頁面,表示tomcat解析成功。接着,在/webdata/www/目錄下建立一個test.html的靜態頁面,內容如下:

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Administrator</title>
    </head>
    <body>
    apache and tomcat successful,
    This is html pages!
    </body>
    </html>

    通過訪問網頁,出現如下內容:
    apache and tomcat successful, This is html pages!
    這表示靜態網頁也可以解析成功。

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