最新更新 sitemap 网站制作设计本站搜索
网页设计
国外网站 韩国网站 个人主页 手提袋设计 CSS 网页特效 平面设计 网站设计 Flash CMS技巧 服装网站 php教程 photoshop 画册 服务器选用 数据库 Office
虚拟主机 域名注册 云主机 网页设计 客服QQ:8208442
当前位置:首页 > 编程开发 > jsp教程

使用UrlRewrite实现泛域名解析的方法

日期:01-03    来源:中国设计秀    作者:cnwebshow.com

1 安装 tomcat/apache gC5中国设计秀
2 下载 jk.so, 具体版本请根据需要,不再多说 gC5中国设计秀
3 关键是配置 gC5中国设计秀
httpd.conf查看复制到剪切板打印gC5中国设计秀
    gC5中国设计秀
# 去掉这个前面的#,启用它   gC5中国设计秀
LoadModule rewrite_module modules/mod_rewrite.so   gC5中国设计秀
  gC5中国设计秀
# 启用jk,同时配置参数   gC5中国设计秀
LoadModule   jk_module   modules/mod_jk.so          gC5中国设计秀
JkWorkersFile   D:/Apache2.2/conf/workers.PRoperties        gC5中国设计秀
JkLogFile   d:/Apache2.2/logs/mod_jk.log        gC5中国设计秀
JkLogLevel   info      gC5中国设计秀
#JkLogLevel   debug        gC5中国设计秀
JkLogStampFormat   "[%a   %b   %d   %H:%M:%S   %Y]   "        gC5中国设计秀
JkOptions   +ForwardKeySize   +ForwardURICompat   -ForwardDirectories        gC5中国设计秀
JkRequestLogFormat   "%w   %V   %T"        gC5中国设计秀
JkMount   /servlet/*   myloadbalancer      gC5中国设计秀
JkMount   /*.jsp   myloadbalancer   gC5中国设计秀
  gC5中国设计秀
# 虚拟主机,这里模拟了 a.test.com 和 b.test.com 以及 a.tst.com/blog的调用   gC5中国设计秀
  gC5中国设计秀
<VirtualHost _default_:80>   gC5中国设计秀
ServerAdmin yourmail@domain.com   gC5中国设计秀
DocumentRoot D:Apache2.2htdocs   gC5中国设计秀
ServerName all-sites   gC5中国设计秀
ErrorLog logs/all-sites-error.log   gC5中国设计秀
CustomLog logs/all-sites-access.log common   gC5中国设计秀
RewriteEngine On   gC5中国设计秀
# 下面三行实现动态解析   gC5中国设计秀
RewriteCond %{HTTP_HOST} ^[a-z0-9-]+.test.com$   gC5中国设计秀
RewriteRule ^/(.*)$ /%{HTTP_HOST}/$1  gC5中国设计秀
RewriteRule ^/([a-z0-9-]+).test.com/?$ /index.jsp?u=$1 [L,PT]   gC5中国设计秀
RewriteRule ^/([a-z0-9-]+).test.com/blog(/(.*))?$ /blog.jsp?u=$1&$3 [L,PT]   gC5中国设计秀
  gC5中国设计秀
<Directory "D:Apache2.2htdocs">   gC5中国设计秀
    Options FollowSymLinks   gC5中国设计秀
    AllowOverride None   gC5中国设计秀
    Order allow,deny   gC5中国设计秀
    Allow from all   gC5中国设计秀
</Directory>   gC5中国设计秀
  gC5中国设计秀
</VirtualHost> gC5中国设计秀

 gC5中国设计秀
# 去掉这个前面的#,启用它gC5中国设计秀
LoadModule rewrite_module modules/mod_rewrite.sogC5中国设计秀

# 启用jk,同时配置参数gC5中国设计秀
LoadModule   jk_module   modules/mod_jk.so       gC5中国设计秀
JkWorkersFile   D:/Apache2.2/conf/workers.properties     gC5中国设计秀
JkLogFile   d:/Apache2.2/logs/mod_jk.log     gC5中国设计秀
JkLogLevel   info   gC5中国设计秀
#JkLogLevel   debug     gC5中国设计秀
JkLogStampFormat   "[%a   %b   %d   %H:%M:%S   %Y]   "     gC5中国设计秀
JkOptions   +ForwardKeySize   +ForwardURICompat   -ForwardDirectories     gC5中国设计秀
JkRequestLogFormat   "%w   %V   %T"     gC5中国设计秀
JkMount   /servlet/*   myloadbalancer   gC5中国设计秀
JkMount   /*.jsp   myloadbalancergC5中国设计秀

# 虚拟主机,这里模拟了 a.test.com 和 b.test.com 以及 a.tst.com/blog的调用gC5中国设计秀

<VirtualHost _default_:80>gC5中国设计秀
ServerAdmin yourmail@domain.comgC5中国设计秀
DocumentRoot D:Apache2.2htdocsgC5中国设计秀
ServerName all-sitesgC5中国设计秀
ErrorLog logs/all-sites-error.loggC5中国设计秀
CustomLog logs/all-sites-access.log commongC5中国设计秀
RewriteEngine OngC5中国设计秀
# 下面三行实现动态解析gC5中国设计秀
RewriteCond %{HTTP_HOST} ^[a-z0-9-]+.test.com$gC5中国设计秀
RewriteRule ^/(.*)$ /%{HTTP_HOST}/$1gC5中国设计秀
RewriteRule ^/([a-z0-9-]+).test.com/?$ /index.jsp?u=$1 [L,PT]gC5中国设计秀
RewriteRule ^/([a-z0-9-]+).test.com/blog(/(.*))?$ /blog.jsp?u=$1&$3 [L,PT]gC5中国设计秀

<Directory "D:Apache2.2htdocs">gC5中国设计秀
    Options FollowSymLinksgC5中国设计秀
    AllowOverride NonegC5中国设计秀
    Order allow,denygC5中国设计秀
    Allow from allgC5中国设计秀
</Directory>gC5中国设计秀

</VirtualHost>workers.properties查看复制到剪切板打印gC5中国设计秀
worker.list=myloadbalancer      gC5中国设计秀
     gC5中国设计秀
worker.tomcat1.type=ajp13      gC5中国设计秀
worker.tomcat1.host=localhost      gC5中国设计秀
worker.tomcat1.port=8009      gC5中国设计秀
worker.tomcat1.lbfactor=1      gC5中国设计秀
       gC5中国设计秀
     gC5中国设计秀
worker.myloadbalancer.type=lb      gC5中国设计秀
worker.myloadbalancer.balance_workers=tomcat1      gC5中国设计秀
worker.status.type=status   gC5中国设计秀

  worker.list=myloadbalancer   gC5中国设计秀
    gC5中国设计秀
  worker.tomcat1.type=ajp13   gC5中国设计秀
  worker.tomcat1.host=localhost   gC5中国设计秀
  worker.tomcat1.port=8009   gC5中国设计秀
  worker.tomcat1.lbfactor=1   gC5中国设计秀
      gC5中国设计秀
    gC5中国设计秀
  worker.myloadbalancer.type=lb   gC5中国设计秀
  worker.myloadbalancer.balance_workers=tomcat1   gC5中国设计秀
  worker.status.type=status  server.xml  gC5中国设计秀
去掉前后的<!-- 和 -->启用 8009端口查看复制到剪切板打印gC5中国设计秀
<Connector port="8009"    gC5中国设计秀
.. gC5中国设计秀

 <Connector port="8009" gC5中国设计秀
...说明一下 gC5中国设计秀
在httpd.conf里面启用了rewrite_module,和 mod_jk, 并配置了 与tomcat的连接配置。 gC5中国设计秀
虚拟主机的配置是关键 gC5中国设计秀
ServerName all-sites gC5中国设计秀
可以修改为 gC5中国设计秀
ServerName test.com gC5中国设计秀
ServerAlias *.test.com gC5中国设计秀
这样可以明确指定这个虚拟主机负责的域名 gC5中国设计秀
urlRewrite 配置部分gC5中国设计秀

RewriteCond %{HTTP_HOST} ^[a-z0-9-]+.test.com$   gC5中国设计秀
RewriteRule ^/(.*)$ /%{HTTP_HOST}/$1gC5中国设计秀

RewriteRule ^/([a-z0-9-]+).test.com/?$ /index.jsp?u=$1 [L,PT]   gC5中国设计秀
RewriteRule ^/([a-z0-9-]+).test.com/blog(/(.*))?$ /blog.jsp?u=$1&$3 [L,PT]   gC5中国设计秀
第一行,声明这个重写只对主机名(%{HTTP_HOST}) 类似 XXXX.test.com  感兴趣,那个是正则的 gC5中国设计秀
第二行,将所有的对此域名的请求进行第一次改写,比如 gC5中国设计秀
a.test.com 改成 gC5中国设计秀
/a.test.com gC5中国设计秀
把  gC5中国设计秀
b.test.com/blog 改成 gC5中国设计秀
/b.test/com/blog gC5中国设计秀
第三行,对无参数的访问进行调整 gC5中国设计秀
将 /a.test.com 改成 gC5中国设计秀
/index.jsp?u=a gC5中国设计秀
第四行,对有参数路径的进行调整 gC5中国设计秀
将 /b.test.com/blog 改成 gC5中国设计秀
/blog.jsp?u=b gC5中国设计秀
如果还有参数比如 gC5中国设计秀
b.test.com/id=3 则最终改写为 gC5中国设计秀
/b.test.com/id=3 gC5中国设计秀
/blog.jsp?u=b&id=3 gC5中国设计秀
剩下的就不多说了!gC5中国设计秀
http://www.laozizhu.com/view.jsp?articleId=553gC5中国设计秀

本文引用地址:/bc/article_46577.html
网站地图 | 关于我们 | 联系我们 | 网站建设 | 广告服务 | 版权声明 | 免责声明