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

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條評論
主站蜘蛛池模板: 龙山县| 恩平市| 凉山| 射洪县| 定边县| 张家界市| 河源市| 宜宾县| 澄江县| 五华县| 鹰潭市| 兴宁市| 监利县| 凤城市| 佛山市| 金湖县| 平罗县| 马鞍山市| 锡林郭勒盟| 旬阳县| 汾阳市| 通州市| 镇原县| 屯留县| 庆元县| 高州市| 安顺市| 定边县| 汉阴县| 彝良县| 万山特区| 日喀则市| 大荔县| 郧西县| 昌乐县| 石楼县| 精河县| 常宁市| 平阳县| 萨嘎县| 鹰潭市|