windows 下apahce (2.2.11版)+tomcat+mod_jk整合,url rewrite 路徑重寫,負載平衡基礎實踐

來源:互聯網
上載者:User

1、環境
Apache  :
apache_2.2.11-win32-x86-no_ssl.msi (下載http://httpd.apache.org/download.cgi)
Tomcat :  tomcat5.5.9以上。建議 下載

http://tomcat.apache.org/download-60.cgi

mod_jk: mod_jk-apache-2.2.4.so 下載

http://tomcat.apache.org/download-connectors.cgi

(這個不是我的版本,應該也可以,如果不可以,問我要了)

tomcat 最好免安裝的。搞這個東東的,都對tomcat熟悉吧。apache 就直接安裝了。

2、安裝配置、調試

a、apache安裝。一路預設基本就行了。

b、tomcat 安裝,如果有免安裝的更好了。

c、複製mod_jk-apache-2.2.4.so 到apache 安裝目錄modules下

d;修改apache 的http.conf  在最後增加

LoadModule jk_module modules/mod_jk-apache-2.2.4.so #這個檔案名稱,要與你剛才複製的名字一隻JkMount /*.jsp controller

worker.list = controller,tomcat1  #server 列表 #========tomcat1========worker.tomcat1.port=8009         #ajp13 連接埠號碼,在tomcat下server.xml配置,預設8009
worker.tomcat1.host=localhost  #tomcat的主機地址,如不為本機,請填寫ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1   #server的加權比重,值越高,分得的請求越多

e:修改tomcat 主設定檔server.xml

找到8009這個注釋的配置。把注釋去掉。

f:測試

開啟tomcat ,然後重啟apache,訪問應用測試。

如果原來測試tomcat下的應用為 http://localhost:8080/oa

那現在測試http://localhost/oa 如果原來的和現在的都正常,就OK了。

寫的簡單,根據實際配置經驗寫的,沒有一步一步調試。

轉帖:http://www.oecp.cn/hi/single/blog/115

--------------------------------------------------------------------------------------------------------------------------------------------------------

apache url rewrite 路徑重寫,整合了apache+tomcat負載平衡

   路徑重寫有很多用處。最基本最重要的目的就是SEO(搜尋引擎最佳化),至於更多的目的就不過多講述。而利用apache url rewrite 路徑重寫,則是很方便有效方法。可以在儘可能減少程式碼變更的情況下,起到路徑重寫目的。
   本文不只是簡單的只講路徑重寫。而是從項目中來,結合實踐,來講述路徑重寫過程。

    在我的上一篇相關文章中,描述了如何處理負載平衡。可以參見  《windows 下apahce (2.2.11版)+tomcat+mod_jk整合,負載平衡基礎實踐》一節。此文章略顯粗糙。此文是在上篇文章基礎上,進行後續操作。

     這裡給出apache url rewrite 路徑重寫過程、配置方法

     1、在httpd.conf 中找到 #LoadModule rewrite_module modules/mod_rewrite.so

將前面的 # 去掉。目的,使路徑重寫生效。

  2、在此設定檔最後面增加路徑重寫配置即可。

<IfModule mod_rewrite.c>
RewriteEngine on
 RewriteRule ^/myapp/(.*)$  /$1 [L,PT]
 RewriteRule ^/search/(.*)\.html$ /search.jsp\?key=$1 [L,PT]
 RewriteRule ^/search/([0-9]+)-([0-9]+)-([0-9]+)-(.*)\.htm$ /search2\.jsp\?key=$1&order=$2&price=$3&page=$4 [L,PT]
</IfModule>
 

注意:
a、RewriteEngine on  是必須的。讓路徑重寫生效。

b、 RewriteRule ^/myapp/(.*)$  /$1 [L,PT]    此句將myapp過濾掉。一般沒有應用好伺服器配置的話,用網址開啟網站,容易看到應用程式名稱。如果你訪問應用時,地址欄含有應用程式名稱,加上此句話,就可以將你的應用程式名稱去掉。即使用者不可看到了。  myapp 是你的應用程式名稱哦。可別直接複製。

c、注意到 (.*)      $1這些東西了吧。一個括弧中的東西,是對應一個$佔位的。具體文法,請看專業的文檔吧。這裡只給簡單樣本。

 RewriteRule ^/search/([0-9]+)-([0-9]+)-([0-9]+)-(.*)\.htm$ /search2\.jsp\?key=$1&order=$2&price=$3&page=$4 [L,PT]

這句話,你就可以看到了。總共4個(),後面有四個$*,相對。位置很重要。位置指的是$1,$2,第一個、第二個位置。

d、在看[L,PT] 這個,這個是有含義的L是最後一個的規則。具體還是看專業文檔。我一般就用這兩個[L,PT]。我想一般這樣也差不多 了。

3、apache 路徑重寫,是對動態路徑的重寫。還看最後的一個配置就可以看到了。即達到的效果是,使用者訪問時,地址欄中,顯示的是html文檔,但後台tomcat伺服器,用的是jsp進行相應。至於apache+tomcat配置。看上篇文章咯。

apache url rewrite 路徑重寫,就簡單寫到這裡,在稍後會加上系列文章之:apache+tomcat 單IP,多網域名稱配置實踐。

轉帖:http://www.oecp.cn/hi/single/blog/124

------------------------------------------------------------------------------------------------------------------------------------------------------------------------

apache+tomcat 單IP,多網域名稱配置實踐。超實用配置經驗

標籤:apache+tomcat多網域名稱配置apache多網域名稱配置

   相信很多人會遇到,自己只有一台伺服器,而想在一台伺服器上,有若干個應用。讓使用者訪問。同時又不想用URL轉寄之類,對使用者不好的體驗。
   如果用IIS配置起來,就很簡單了,但jsp系列的,在網上尋找的資料都不完全符合自己實踐。還是自己模式配置在apache、tomcat叢集情況下,單IP多網域名稱配置。

     需求:

   1、靜態頁面由apache響應,動態jsp部分,由tomcat處理。

      2、只有一台伺服器,卻需要有若干個jsp應用要運行,希望客戶可以用網域名稱訪問

     3、不用URL轉寄,對使用者不好,並且不利於SEO

     配置

     1、apache+tomcat配置。

參見以前文章:

a、apache+tomcat基礎配置:windows 下apahce (2.2.11版)+tomcat+mod_jk整合,負載平衡基礎實踐

b、靜態路徑重寫:apache url rewrite 路徑重寫,整合了apache+tomcat負載平衡

2、在apache 安裝檔案中找到主設定檔 http.conf

尋找:# Include conf/extra/httpd-vhosts.conf

去掉前面的# 。讓虛擬機器主機配置生效。

3、在主設定檔中 http.conf

找到  JkMount /* controller

注釋掉。如果不是按照我系列文章的第一篇操作,則不存在此過程。

4、開啟extra 下的 httpd-vhosts.conf

全刪掉,參考以下內容編寫

NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin dugang@baiyyy.com.cn
    DocumentRoot d:/app/test
    ServerName test.baiyyy.com.cn
    ServerAlias test.baiyyy.com.cn
<Directory  "d:/app/test">   
      Options Indexes FollowSymLinks
      AllowOverride All
      Order allow,deny
      Allow from all
</Directory>

#此句一定要加上。否則不會找tomcat進行jsp處理的。這句,不能在主設定檔中,必須在此host設定檔中。
JkMount /* controller  #注意這裡是我第一篇文章中提到的,這裡將所有的請求都轉寄給tomcat去做負載平衡。如果不是按照我先前的配置。則你是找不到此句話的。不需要添加的。如果不添加此句話,就不能處理動態網頁面。只能訪問靜態頁面咯。

</VirtualHost>

#第二個虛擬機器主機  test2.baiyyy.com.cn
<VirtualHost *:80>
    ServerAdmin dugang@baiyyy.com.cn
    DocumentRoot G:/DevPlateForm/koa
    ServerName test2.baiyyy.com.cn
    ServerAlias test2.baiyyy.com.cn
<Directory  "G:/DevPlateForm/koa">   
      Options Indexes FollowSymLinks
      AllowOverride All
      Order allow,deny
      Allow from all
</Directory>
</VirtualHost>

4、注意事項

看上面代碼中,紅色和加粗字型。特別注意。

5、配置前必備

請參閱我系列文章中的前兩篇。否則單獨用此配置是配置不成功的。

6、至於網域名稱解析配置,就不是這裡要講述的。那一般網管都會處理的。

 通過本系列文章你可以解決:

1、apache+tomcat負載平衡、叢集配置。讓你的伺服器配置更最佳化。

2、apache 路徑重寫。為你的搜尋引擎最佳化SEO ,出一份力量。也讓你的網站連結更友好,更易被搜尋引擎抓取。

3、apache下的單IP地址,多網域名稱配置,讓你的網域名稱和伺服器Ip地址更充分的利用。結合tomcat處理動態網頁面,無論是純靜態html,或者是動態jsp應用型網站,都可以進行多網域名稱配置。

轉載,請注本站地址:http://www.po-soft.com/blog/single/125.html

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.