请教Apache2.2+tomcat6配置泛域名

wangyingdong 发布于 2011/07/07 10:46
阅读 946
收藏 4

大家好,Apache2.2+tomcat6配置动态二级域名,配置后不能解析jsp了,

在Apache中增加:
 

<VirtualHost *:8080> 
    ServerName union.abc.com 
    ServerAlias *.abc.com
    DocumentRoot "D:\Tomcat 6.0\abc\ROOT" 
    <Directory "D:\Tomcat 6.0\abc\ROOT"> 
        Options Indexes MultiViews 
        AllowOverride None 
        Order allow,deny 
        Allow from all 
    </Directory> 
    DirectoryIndex index.jsp 
  </VirtualHost>  

tomcat中增加

 <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
			<Context path="" docBase="D:\Tomcat 6.0\abc\ROOT" debug="0" reloadable="true"/>     
      </Host>
访问:http://a.abc.com:8080/ 后出现的是jsp的源码,没有解析jsp,想问一下大家都是怎么配置的,怎么利用Apache+tomcat配置泛域名的,谢谢。
加载中
0
红薯
红薯
要解析 jsp 必须用 mod_jk 或者 proxy 把 apache 接收到的请求送到 tomcat 去执行,apache 本身是不支持 jsp 解析的
0
wangyingdong
wangyingdong

谢谢红薯老大,我修改了一下 VirtualHost增加了ProxyPass,这样就可以访问jsp了,还有一个问题就是比如在地址栏http://test.abc.com 的话,怎么弄到 http://www.abc.com/user.do?name=test ,怎么获取 test这们呢,谢谢。

 <VirtualHost *:8080>
    ServerName union.abc.com
    ServerAlias *.abc.com
    DocumentRoot "D:\Tomcat 6.0\abc\ROOT"
    <Directory "D:\Tomcat 6.0\abc\ROOT">
        Options Indexes MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
    DirectoryIndex index.jsp  
    ProxyPass / http://localhost/
    ProxyPassMatch ^/(.*\.(jsp|do))$ http://localhost/$1
  </VirtualHost> 

 

0
da54ng
da54ng

RewriteCond %{HTTP_HOST} ^(.*)\.abc\.com$

RewriteRule ^(.*) %{HTTP_HOST}$1 [C]

RewriteRule ^(.*).abc.com http://www.abc.com/user.do?name=$1 [PT]

0
wangyingdong
wangyingdong
谢谢楼上的兄弟,不用 Rewrite可以吗?不是已经配置了ServerAlias *.abc.com吗?
0
wangyingdong
wangyingdong
还有一个问题就是比如在地址栏http://test.abc.com 的话,怎么弄到 http://www.abc.com/user.do?name=test ,怎么获取 test这个呢,谢谢
0
0
wangyingdong
wangyingdong

引用来自“红薯”的答案

谢谢,现在用的就是这种

 ProxyPreserveHost On
 ProxyPass / http://blog.abc.com
 ProxyPassMatch / http://blog.ab.com

想实现就是和sina,163网一样的功能比如 user1 用户开通了blog,那他的地址就是 http://blog.user1.abc.com 这种方式,不知道该怎么弄了。

0
wangyingdong
wangyingdong

<VirtualHost *:8080>
ServerName www.abc.com
ServerAlias *.abc.com
ProxyPreserveHost On
ProxyPass / http://www.abc.com
ProxyPassReverse / http://www.abc.com
RewriteEngine on
RewriteCond   %{HTTP_HOST}    ^www\.[^.]+\.abc\.com$
RewriteRule   ^(.+)$      %{HTTP_HOST}$1 [C]
RewriteRule ^www\.[^.]+\.abc\.com$ /index.jsp?name=$1 [R]
</VirtualHost>
上面配置还没有成功,问题还没有找到。。
返回顶部
顶部