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

Apache和Tomcat 實現泛域名解析的嘗試

系統 4610 0

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

你想讓自己的服務器為每個會員提供一個獨立的二級域名嗎?比如
aa.test.com
bb.test.com/blog
當然aa、bb都是你的一個會員而已

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

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

2 相關的配置文件

httpd.conf

?
#?去掉這個前面的#
, 啟用它
LoadModule?rewrite_module?modules/mod_rewrite.so
?
#?啟用jk
, 同時配置參數
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
?
#?虛擬主機,這里模擬了?a.test.com?和?b.test.com?以及?a.tst.com/blog的調用
?
<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
#?下面四行實現動態解析
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的連接配置。

虛擬主機的配置是關鍵

ServerName?all-sites
可以修改為
ServerName test.com
ServerAlias *.test.com
這樣可以明確指定這個虛擬主機負責的域名

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]???

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

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


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

第三行,對無參數的訪問進行調整
將 /a.test.com 改成
/index.jsp?u=a

第四行,對有參數路徑的進行調整
將 /b.test.com/blog 改成
/blog.jsp?u=b

如果還有參數比如
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 實現泛域名解析的嘗試


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

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

【本文對您有幫助就好】

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

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 英吉沙县| 杭锦后旗| 翼城县| 兴义市| 阳江市| 林芝县| 河池市| 三江| 东兴市| 渭源县| 九寨沟县| 融水| 莆田市| 句容市| 陇西县| 郯城县| 石景山区| 开阳县| 亚东县| 乌拉特前旗| 望谟县| 达日县| 沈阳市| 鸡西市| 伊宁市| 响水县| 大英县| 丰原市| 手游| 勃利县| 山东省| 桃源县| 凉山| 武安市| 镇沅| 筠连县| 奉贤区| 柏乡县| 会东县| 宝应县| 华坪县|