一臺服務器多個web服務器的配置(apache+tomcat)



    系統環境:Rad Hat Linux as 4
    apache 2.2.0
    tomcat 5.5
    系統起了兩個tomcat,分別訪問端口是8080、8060 AJP13端口是8009、8049
    有兩個域名www.xxx.com和www.yyy.com對應這兩個tomcat服務
    怎么配置apache能實現根據域名訪問兩個網站

    解決問題保證500份奉上..

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    為什么要兩個 tomcat 進程呢?一個不行嗎?

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    分別是兩個網站......一個是另一個的升級。但是要兩個都跑著...

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    up一下。沒人會嗎?解決問題500分,不夠再加

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    在不同的端口上運行不同的站點(基于多端口的服務器上配置基于域名的虛擬主機):
    Listen 80
    Listen 8080

    NameVirtualHost 172.20.30.40:80
    NameVirtualHost 172.20.30.40:8080

    <VirtualHost 172.20.30.40:80>
    ServerName www.example1.com
    DocumentRoot /www/domain-80
    </VirtualHost>

    <VirtualHost 172.20.30.40:8080>
    ServerName www.example1.com
    DocumentRoot /www/domain-8080
    </VirtualHost>

    <VirtualHost 172.20.30.40:80>
    ServerName www.example2.org
    DocumentRoot /www/otherdomain-80
    </VirtualHost>

    <VirtualHost 172.20.30.40:8080>
    ServerName www.example2.org
    DocumentRoot /www/otherdomain-8080
    </VirtualHost>

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    http://www.ahbvc.cn:8080/info_Show.asp?ArticleID=2382

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    建立兩個httpd.conf ,分別設置不用得端口及目錄。

    分別啟動兩個apache
    ./apachectl -f conf文件 -k start

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    謝謝各位。
    我用的jk2插件,linux系統,這個環境下有配成功的嗎?
    主要是怎么在workers2.properties里定義多個worker,還能根據不同的條件轉發...
    謝謝

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    Apache2.2自帶負載均衡模塊,不需要用JK2了,你可以參考一下我這個做法:
    Apache2.2+Tomcat5.5負載均衡+集群forAS4&Solaris
    http://blog.kaila.com.cn/user1/49574/archives/2006/17307.shtml

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    大家是不是說得太麻煩了。。

    TOMCAT本身就支持HOST設置。。

    跟APACHE的VHOST設置一樣。。

    不過。如果APACHE use port 80
    那tomcat不要用80

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    通過配置不同端口

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    用虛擬主機啊,就是為了實現你這個目的,才發明的虛擬主機。

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    我的是在WINDOWS下配置的,整合了apache和tomcat,端口都是用80:
    conf.xml:
    <Server port="8005" shutdown="SHUTDOWN">

    <GlobalNamingResources>
    <!-- Used by Manager webapp -->
    <Resource name="UserDatabase" auth="Container"
    type="org.apache.catalina.UserDatabase"
    description="User database that can be updated and saved"
    factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
    pathname="conf/tomcat-users.xml" />
    </GlobalNamingResources>

    <Service name="Catalina">
    <Connector port="8080" />

    <!-- This is here for compatibility only, not required -->
    <Connector port="8009" protocol="AJP/1.3" />

    <Engine name="Catalina" defaultHost="localhost">
    <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
    resourceName="UserDatabase" />
    <Host name="10.137.200.46" appBase="E:\code\oa"
    unpackWARs="true" autoDeploy="true"
    xmlValidation="false" xmlNamespaceAware="false">
    <Context path=""
    docBase="."
    crossContext="false"
    debug="0"
    reloadable="true" />
    </Host>
    <Host name="10.137.200.48" appBase="E:\code\oa_mysql"
    unpackWARs="true" autoDeploy="true"
    xmlValidation="false" xmlNamespaceAware="false">
    <Context path=""
    docBase="."
    crossContext="false"
    debug="0"
    reloadable="true" />
    </Host>
    </Engine>
    </Service>
    </Server>

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    workers.properties
    workers.tomcat_home=D:\program\Tomcat 5.5 #讓mod_jk模塊知道Tomcat
    workers.java_home=C:\j2sdk1.4.2_11 #讓mod_jk模塊知道j2sdk
    ps=\
    worker.list=ajp13 #模塊版本,現有ajp14了,不要修改
    worker.ajp13.port=8009 #工作端口,若沒占用則不用修改
    worker.ajp13.host=localhost #本機,若上面的Apache主機不為localhost,作相應修改
    worker.ajp13.type=ajp13 #類型
    worker.ajp13.lbfactor=1 #代理數,不用修改

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    httpd.conf下加下一段(相應參數要改):
    LoadModule jk_module modules/mod_jk.dll
    JkWorkersFile "D:/program/Tomcat 5.5/conf/workers.properties"
    JkLogFile "D:/program/Tomcat 5.5/logs/mod_jk2.log"
    JkLogLevel info
    JkMount /servlet/* ajp13
    JkMount /*.jsp ajp13

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    APACHE2.2里面就不要用JK啦.有更好的方法.mod_proxy_ajp.so

    再配合虛擬主機里面設置
    ProxyPass / ajp://localhost:8009/
    ProxyPassReverse / ajp://localhost:8009/
    使用比work2配置方便容易得多.

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解


    配置httpd-vhosts.conf就行了
    <VirtualHost *:80>
    ServerAdmin flylibin@sina.com
    DocumentRoot /var/www/html/apache/www
    ServerName www.aaaa.com
    ErrorLog logs/error_log
    </VirtualHost>

    <VirtualHost *:80>
    ServerAdmin flylibin@sina.com
    DocumentRoot /var/www/html/tomcat/www
    ServerName www.bbbb.com
    ErrorLog logs/tomcat-error_log
    </VirtualHost>
    然后把tomcat和apache集成一下就行了,這個網上到處都是。
    這樣絕對可以,我的就是這么弄的。

    回復:一臺服務器多個web服務器的配置(apache+tomcat)500分求解