neversoft 发表于 2015-8-5 09:21:10

apache + tomcat +js + css 实现分离跨域

  http://blog.iyunv.com/bayaci/article/details/7033722
  结合上一篇,继续分离站点的资源,到不同的站点上去

  

  一个java站点,使用tomcat服务器,那么需要把站点的css 、images、js都需要分离。用不同的域名的话,会碰到跨域的情况。为此,使用apache的代理来实现分离工作
  

  css 、images、js资源全部放到
  src.test.com/css/……
  src.test.com/images/……
  src.test.com/js/……

  

  

  java 站点tomcat 服务器访问方式
  ajp://127.0.0.1:8009/

  其实是http://127.0.0.1:8080/
  

  

  apache httpd.conf 配置
  
         
      ServerName mnr.test.com
      RewriteEngine on
    RewriteRule ^/(.*) ajp://127.0.0.1:8009/sub/$1    
      

  之后通过http://sub.test.com 方式访问站点
  

  因为css 、images、js资源是独立域名,有可能是在其他的服务器上,但是必须在子域名中同域名方式调用才能避免跨域的情况。
  
         
      ServerName mnr.test.com
      RewriteEngine on
    ProxyPass /js/ http://src.test.com/js/
    ProxyPass /css/ http://src.test.com/css/
    ProxyPass /images/ http://src.test.com/images/
    RewriteRule ((?!/((js)|(css)|(img))/)^.*$) ajp://127.0.0.1:8009/sub/$1
   
      


  重启apache,就能以
  

  调用对应关系:

  sub.test.com/css                  src.test.com/css/……
  sub.test.com/images                  src.test.com/images/……
  sub.test.com/js                  src.test.com/js/……
  sub.test.com 资源都是访问tomcat目录下的资源

  

  

  

  

  

  

  

  

  
页: [1]
查看完整版本: apache + tomcat +js + css 实现分离跨域