日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Apache和Tomcat 實(shí)現(xiàn)泛域名解析的嘗試

系統(tǒng) 4306 0

原文: http://www.java2000.net/viewthread.jsp?tid=5422

你想讓自己的服務(wù)器為每個(gè)會(huì)員提供一個(gè)獨(dú)立的二級域名嗎?比如
aa.test.com
bb.test.com/blog
當(dāng)然aa、bb都是你的一個(gè)會(huì)員而已

下面是我今天嘗試成功的部分

1 安裝apache ,tomcat 和 mod_jk部分我就不說了,如果你不能使用它們,請參考其它教程

2 相關(guān)的配置文件

httpd.conf

?
#?去掉這個(gè)前面的#
, 啟用它
LoadModule?rewrite_module?modules/mod_rewrite.so
?
#?啟用jk
, 同時(shí)配置參數(shù)
LoadModule???jk_module???modules/mod_jk.so???????
JkWorkersFile???D:/Apache2
.2 /conf/workers.properties?????
JkLogFile???d:/Apache2
.2 /logs/mod_jk.log?????
JkLogLevel???info???
#JkLogLevel???debug?????
JkLogStampFormat???
" [%a???%b???%d???%H:%M:%S???%Y]??? " ?????
JkOptions???+ForwardKeySize???+ForwardURICompat???-ForwardDirectories?????
JkRequestLogFormat???
" %w???%V???%T " ?????
JkMount???/servlet/*???myloadbalancer???
JkMount???/*.jsp???myloadbalancer
?
#?虛擬主機(jī),這里模擬了?a.test.com?和?b.test.com?以及?a.tst.com/blog的調(diào)用
?
<VirtualHost?_default_:
80 >
ServerAdmin?yourmail@domain.com
DocumentRoot?D:Apache2
.2 htdocs
ServerName?all-sites
ErrorLog?logs/all-sites-error.log
CustomLog?logs/all-sites-access.log?common
RewriteEngine?On
#?下面四行實(shí)現(xiàn)動(dòng)態(tài)解析
RewriteCond?%{HTTP_HOST}?^
[ a-z0-9- ] +.test.com$
RewriteRule?^/(.*)$?/%{HTTP_HOST}/$
1
RewriteRule?^/(
[ a-z0-9- ] +).test.com/?$?/index.jsp?u = $ 1 ? [ L,PT ]
RewriteRule?^/(
[ a-z0-9- ] +).test.com/blog(/(.*))?$?/blog.jsp?u = $ 1 &$ 3 ? [ L,PT ]

<Directory?
" D:Apache2.2htdocs " >
????Options?FollowSymLinks
????AllowOverride?None
????Order?allow
, deny
????Allow?from?all
</Directory>

</VirtualHost>

workers.properties

??worker.list = myloadbalancer???
????
??worker.tomcat1.type
= ajp13???
??worker.tomcat1.host
= localhost???
??worker.tomcat1.port
= 8009 ???
??worker.tomcat1.lbfactor
= 1 ???
??????
????
??worker.myloadbalancer.type
= lb???
??worker.myloadbalancer.balance_workers
= tomcat1???
??worker.status.type
= status??

server.xml?
去掉前后的<!--?和?-->啟用?8009端口

? < Connector? port ="8009" ?
...

3 說明一下

在httpd.conf里面啟用了rewrite_module,和 mod_jk, 并配置了 與tomcat的連接配置。

虛擬主機(jī)的配置是關(guān)鍵

ServerName?all-sites
可以修改為
ServerName test.com
ServerAlias *.test.com
這樣可以明確指定這個(gè)虛擬主機(jī)負(fù)責(zé)的域名

urlRewrite 配置部分

  1. RewriteCond?%{HTTP_HOST}?^[a-z0- 9 \-]+\.test\.com$ ??
  2. RewriteRule?^/(.*)$?/%{HTTP_HOST}/$ 1 ??
  3. RewriteRule?^/([a-z0- 9 \-]+)\.test\.com/?$?/index.jsp?u=$ 1 ?[L,PT] ??
  4. RewriteRule?^/([a-z0- 9 \-]+)\.test\.com/blog(/(.*))?$?/blog.jsp?u=$ 1 &$ 3 ?[L,PT]???

第一行,聲明這個(gè)重寫只對主機(jī)名(%{HTTP_HOST}) 類似 XXXX.test.com? 感興趣,那個(gè)是正則的

第二行,將所有的對此域名的請求進(jìn)行第一次改寫,比如
a.test.com 改成
/a.test.com


b.test.com/blog 改成
/b.test/com/blog

第三行,對無參數(shù)的訪問進(jìn)行調(diào)整
將 /a.test.com 改成
/index.jsp?u=a

第四行,對有參數(shù)路徑的進(jìn)行調(diào)整
將 /b.test.com/blog 改成
/blog.jsp?u=b

如果還有參數(shù)比如
b.test.com/id=3 則最終改寫為
/b.test.com/id=3
/blog.jsp?u=b&id=3

剩下的就不多說了!







<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script>

Apache和Tomcat 實(shí)現(xiàn)泛域名解析的嘗試


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 贵定县| 成都市| 荃湾区| 武定县| 河北区| 台州市| 肥城市| 太仆寺旗| 济南市| 仪陇县| 诸城市| 徐水县| 苍梧县| 洪泽县| 习水县| 牙克石市| 兴仁县| 遂川县| 田林县| 三穗县| 文山县| 柏乡县| 长春市| 桂阳县| 古丈县| 三明市| 敦化市| 太湖县| 锡林郭勒盟| 信丰县| 抚宁县| 三原县| 榕江县| 公安县| 旌德县| 久治县| 宿迁市| 天峻县| 无为县| 双流县| 襄垣县|