JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Application Server » Tomcat  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友   
reply to topicthreaded modego to previous topicgo to next topic
本主題所含的標籤
無標籤
作者 Re:請求tomcat 5.0+apache2的整合範例 [Re:gloryfu]
johnsoh

disney



發文: 456
積分: 0
於 2005-11-24 15:39 user profilesend a private message to usersend email to johnsohreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
pls refer http://tomcat.apache.org/connectors-doc/howto/apache.html

browser edited on 2005-11-25 10:32
reply to postreply to post
作者 Re:請求tomcat 5.0+apache2的整合範例 [Re:henry_1980]
gloryfu





發文: 20
積分: 1
於 2005-12-23 15:18 user profilesend a private message to usersend email to gloryfureply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
在Fedora Core2中架設一個www.mno.com.tw可同時執行Tomcat5.0.28和PHP的虛擬主機步驟如下

1. 設定apache→joe /etc/httpd/conf/httpd.conf

將KeepAlive Off改為On
將User apache改為nobody
將Group apache改為nobody
將ServerAdmin root@localhost改為主機名稱如root@gloryfu
將ServerName new.host.name:80取消註解並改為192.168.1.121:80
將UseCanonicalName Off改為On
將UserDir disable註解起來
將UserDir public_html取消註解
將DirectoryIndex設定的網頁前面加上inde.jsp index.htm index.php
將LanguagePriority中最後的zh-CN zh-TW加在前面為 zh-TW zh-CN en ca........
將AddDefaultCharset UTF-8改為BIG5
將AddType application/x-compress .Z取消註解
將AddType application/x-gzip .gz .tgz取消註解

2. 設定虛擬主機

NameVirtualHost *:80

.......

<VirtualHost *:80>
DocumentRoot /tomcat/webapps/ROOT/web/mno/
ServerName www.mno.com.tw
<Location "/*.jsp">
JkUriSet worker ajp13:localhost:8009
</Location>
</VirtualHost>

3. 設定連接檔案→joe /etc/httpd/conf/workers2.properties

[url:www.mno.com.tw/*.jsp]
worker=ajp13:localhost:8009

4. 建立網頁存放的目錄

5. 設定tomcat→joe /tomcat/conf/server.xml

在<!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 -->下面把
<Connector port="8080" maxThreads="150".....區塊給註解起來
使用 <!-- 頭與尾 --> 註解

在<!-- Define the default virtual host -->和
<Host name="localhost" debug="0" appBase="webapps"中間加入

<Host name="www.mno.com.tw" debug="0" appBase="/tomcat/webapps/ROOT/web/mno"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="" debug="1"/>
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="cust1_access_log." suffix=".txt" pattern="common"
resolvHosts="false" />
</Host>

6. 設定DNS

7.重新啟動named→httpd→tomcat


reply to postreply to post
作者 Re:請求tomcat 5.0+apache2的整合範例 [Re:javaer]
des001





發文: 56
積分: 0
於 2007-04-25 13:42 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
請問若這樣設的話
是不是幾乎所有的request都會轉去 http://localhost:8080/ ?
因為我試了一下,本來原local機器上還有其它80埠的其它網頁模組
http://www.xxx.com.tw, 現在它們都不見了.
因經這樣設定後, 現在打http://www.xxx.com.tw 畫面全都跑到Tomcat預設頁了(ROOT)?
怎麼會這樣呢?
請問還需怎麼調整可以讓它打http://www.xxx.com.tw這網址不會跑到Tomcat預設頁(ROOT)?
調了很久都調不出來 Dead
感謝!


reply to postreply to post
作者 Re:請求tomcat 5.0+apache2的整合範例 [Re:des001]
javaer

OMG!



發文: 87
積分: 1
於 2007-04-25 15:47 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
des001 wrote:
請問若這樣設的話
是不是幾乎所有的request都會轉去 http://localhost:8080/ ?
因為我試了一下,本來原local機器上還有其它80埠的其它網頁模組
http://www.xxx.com.tw, 現在它們都不見了.
因經這樣設定後, 現在打http://www.xxx.com.tw 畫面全都跑到Tomcat預設頁了(ROOT)?
怎麼會這樣呢?
請問還需怎麼調整可以讓它打http://www.xxx.com.tw這網址不會跑到Tomcat預設頁(ROOT)?
調了很久都調不出來 Dead
感謝!


原來的那篇文章寫的是apache httpd與tomcat的整合
但你的問題是request到了tomcat之後的故事了
apache httpd把request傳給tomcat之後,效果跟直接連到tomcat是一樣的,因此httpd的根目錄會導到tomcat的根目錄。

給你參考一下我的設定,但我只列出重點,記得自己變化一下
1
2
3
4
5
6
7
8
9
10
<Service name="Catalina">
  <Engine name="Catalina" defaultHost="aaa.com">
    <Host name="aaa.com" appBase="C:/webapps">
      <Context path="" docBase="C:/project/xxx"></Context>
      <Context path="/o3" docBase="C:/project/ooo"></Context>
    </Host>
    <Host name="localhost" appBase="webapps" autoDeploy="true">
    </Host>
  </Engine>
</Service>


首先,在Engine那邊設定defaultHost,因此若tomcat找不到對應的網址的話,就會到相對的Host標籤去找映對。
localhost那個Host標籤可以視需要保留,這樣做的原因是host name一定要是domain,不能是ip。所以把對外的domain及管理用的root分開,免得讓外面的人進到你tomcat的管理介面。
你的問題解法是在aaa.com底下那個Context標籤中path=""的docBase改到你想要的位置。

注意,根目錄的path一定要是空字串"",不能是"/",否則會有很討厭的問題(有興趣自己試一下)


javaer edited on 2007-04-25 15:50
reply to postreply to post
作者 Re:請求tomcat 5.0+apache2的整合範例 [Re:javaer]
des001





發文: 56
積分: 0
於 2007-04-25 23:53 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
謝謝您的回答,剛試一下好像還是無法從TOMCAT再傳給php
跑tomcat的網頁OK,但原php網頁還是指到TOMCAT ROOT
以下是我多加的<host>設定,原<host name="localhost">那個我保留
不知那邊設定有誤呢?
1
2
3
4
<Host name="www.xxx.com" appBase="D:/web/">
      <Context path="" docBase="D:/web/www.xxx.com/">
      </Context>
</Host>


我的意思是 原local上的apache是給php用的(跑80埠)
網址http://www.xxx.com.tw

然後除保留原php,也想apache也能與tomcat結合
就是apache要跑jsp(:8080),也要跑原php(:80)

但經上述這樣設定後
apache與tomcat雖成功結合可透過apache傳tomcat跑jsp

但原來跑80埠的php網頁
在網址打http://www.xxx.com.tw
現在都指到 TOMCAT 的 ROOT 預設頁了
若想對應回原php的網頁,也是在Tomcat的server.xml設定?
還是apache可以作到根據request判斷
1.80是要給php的 http://www.xxx.com.tw
2.8080的就全由TOMCAT接手?
感謝!


des001 edited on 2007-04-26 01:14
reply to postreply to post
作者 Re:請求tomcat 5.0+apache2的整合範例 [Re:des001]
javaer

OMG!



發文: 87
積分: 1
於 2007-04-26 18:14 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
des001 wrote:
謝謝您的回答,剛試一下好像還是無法從TOMCAT再傳給php
跑tomcat的網頁OK,但原php網頁還是指到TOMCAT ROOT
以下是我多加的<host>設定,原<host name="localhost">那個我保留
不知那邊設定有誤呢?
1
2
3
4
<Host name="www.xxx.com" appBase="D:/web/">
      <Context path="" docBase="D:/web/www.xxx.com/">
      </Context>
</Host>


我的意思是 原local上的apache是給php用的(跑80埠)
網址http://www.xxx.com.tw

然後除保留原php,也想apache也能與tomcat結合
就是apache要跑jsp(:8080),也要跑原php(:80)

但經上述這樣設定後
apache與tomcat雖成功結合可透過apache傳tomcat跑jsp

但原來跑80埠的php網頁
在網址打http://www.xxx.com.tw
現在都指到 TOMCAT 的 ROOT 預設頁了
若想對應回原php的網頁,也是在Tomcat的server.xml設定?
還是apache可以作到根據request判斷
1.80是要給php的 http://www.xxx.com.tw
2.8080的就全由TOMCAT接手?
感謝!

如果你要的是你最後講的功能,那只要設httpd的VirtualHost就行了
參考一下前面的討論串應該會有列出
不然google一下完整的語法吧


reply to postreply to post
go to first page go to previous page  1   2  go to next page go to last page
» JWorld@TW »  Application Server » Tomcat

reply to topicthreaded modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8