08-12
21
Tomcat二级域名实现
作者:Java伴侣 日期:2008-12-21
服务器配置:
Tomat5.5+Apache2.2启动用mod_proxy_ajp反向代理,Apache通过AJP代理请求到Tomcat的8009端口。运行正常。
服务器默认:http://www.abc.com
现在需求达到目的:
因为我们DNS做了泛域名解析,所有*.abc.com都会指向http://www.abc.com这台服务器的IP地址。
现在需要实现每个用户都在他自己的单独URL空间一样。如
假如注册用户:liping
如果访问:http://liping.abc.com访问的内容,直接访问的内容为http://www.abc.com内容,但用户的客户端URL返回后仍然为http://liping.abc.com,给自己感觉就是在他自己的个人主页里面访问一样:
我曾经做过在APACHE中启用mod_rewrite进行URL重写,把所有
RewriteCond %{HTTP_HOST} !^www\.abc\.cn$ [NC]
RewriteRule ^/(.*) http://www.abc.cn/
但这样实现的缺点是。虽然把所有请求http://liping.abc.com的请求都转发到http://www.abc.com,访问返回的URL为http://www.abc.com。所以没有实现要求。
,如果我在tomcat的server.xml的<Host>元素里面设置<Alias>元素,由于注册用户过多,没办法增加这么多子元素,并且增加了子元素带来的Tomcat服务重启动是无法接受的,另外 因为Tomcat里面不支持通配符所以没办法实现<Alias>*.abc.com</Alias>
Tomat5.5+Apache2.2启动用mod_proxy_ajp反向代理,Apache通过AJP代理请求到Tomcat的8009端口。运行正常。
服务器默认:http://www.abc.com
现在需求达到目的:
因为我们DNS做了泛域名解析,所有*.abc.com都会指向http://www.abc.com这台服务器的IP地址。
现在需要实现每个用户都在他自己的单独URL空间一样。如
假如注册用户:liping
如果访问:http://liping.abc.com访问的内容,直接访问的内容为http://www.abc.com内容,但用户的客户端URL返回后仍然为http://liping.abc.com,给自己感觉就是在他自己的个人主页里面访问一样:
我曾经做过在APACHE中启用mod_rewrite进行URL重写,把所有
RewriteCond %{HTTP_HOST} !^www\.abc\.cn$ [NC]
RewriteRule ^/(.*) http://www.abc.cn/
但这样实现的缺点是。虽然把所有请求http://liping.abc.com的请求都转发到http://www.abc.com,访问返回的URL为http://www.abc.com。所以没有实现要求。
,如果我在tomcat的server.xml的<Host>元素里面设置<Alias>元素,由于注册用户过多,没办法增加这么多子元素,并且增加了子元素带来的Tomcat服务重启动是无法接受的,另外 因为Tomcat里面不支持通配符所以没办法实现<Alias>*.abc.com</Alias>
评论: 0 | 引用: 0 | 查看次数: 617
发表评论