一个网站项目:
目前有两种种功能,类似:个人空间、个人博客技术采用:
mysql+java+struts2要实现的功能:
用户输入 http://hi.***.com/aaa 访问这个项目的 hi.jsp文件 显示aaa用户的空间信息
用户输入 http://blog.***.com/aaa 访问这个项目的 blog.jsp文件 显示aaa用户的博客信息
请问怎么实现, 有人说用过滤可以,但不清楚具体怎么整 还请大家详细说明下!!!
目前有两种种功能,类似:个人空间、个人博客技术采用:
mysql+java+struts2要实现的功能:
用户输入 http://hi.***.com/aaa 访问这个项目的 hi.jsp文件 显示aaa用户的空间信息
用户输入 http://blog.***.com/aaa 访问这个项目的 blog.jsp文件 显示aaa用户的博客信息
请问怎么实现, 有人说用过滤可以,但不清楚具体怎么整 还请大家详细说明下!!!
tom支持这个。看看孙卫琴的java web开发详解,里面说的很清楚
*.abc.com 127.0.0.1
测试的时候可以通过在windows上通过设置C:\WINDOWS\system32\drivers\etc\hosts文件模拟域名解析过程。
127.0.0.1 www.test.com
127.0.0.1 jhh.test.com
下面的配置以test.com为实例。2、安装apache和tomcat,安装过程不写3、根据apache的版本从apache网站上下载相应的mod_jk(有两个目地,一个是做tomcat的代理,实现负载均衡;一个是让apache处理静态的页面提高性能)
下载地址为:http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/4、修改httpd.conf文件进行转发配置
放开如下modules:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
增加虚拟主机文件
Include conf/extra/httpd-vhosts.conf
增加mod_jk的配置项
LoadModule jk_module modules/mod_jk.so
JkWorkersFile "D:\app\apache-tomcat-6.0.20\conf\workers.properties"
#JkMount /servlet/* ajp13
#JkMount /*.jsp ajp13#JkWorkersFile D:/Apache2.2/conf/workers.properties
JkLogFile D:/app/AppServ/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
AddType application/x-jsp .jsp 5、配置D:\app\AppServ\Apache2.2\conf\extra\httpd-vhosts.conf;注释掉原来的内容,添加如下内容<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot D:\app\apache-tomcat-6.0.20\webapps\ROOT
ServerName www.test.com
ServerAlias *.test.comJkMountCopy On
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/?$ /sq/index.jsp?u=$1 [L,PT]
# RewriteRule ^/([a-z0-9\-]+)\.test\.com/blog(/(.*))?$ /blog.jsp?u=$1&$3 [L,PT]<Directory "D:\app\apache-tomcat-6.0.20\webapps\ROOT">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory></VirtualHost>该配置实现了abc.test.com定向到 /sq/index.jsp?u=abc。同时网页地址栏的信息没有发生变化6、在tomcat的conf目录下添加workers.properties文件,添加内容如下:
workers.tomcat_home=D:\app\apache-tomcat-6.0.20
workers.java_home=C:\Program Files\Java\jdk1.6.0_21 worker.list=myloadbalancerworker.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可以添加多个tomcat实现负载均衡7、在应用程序的/sq/index.jsp设置二级域名的首页内容配置到此结束。后续:不同域名的服务session服务共享,需要实现session的共享将在后面给出方法。