您的位置:首页 > 运维架构 > Tomcat

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

2011-12-02 15:39 260 查看
http://blog.csdn.net/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 配置

<VirtualHost *:80>

ServerName mnr.test.com

RewriteEngine on

RewriteRule ^/(.*) ajp://127.0.0.1:8009/sub/$1 [P]

</VirtualHost>

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

因为css 、images、js资源是独立域名,有可能是在其他的服务器上,但是必须在子域名中同域名方式调用才能避免跨域的情况。

<VirtualHost *:80>

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 [P]

</VirtualHost>

重启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目录下的资源
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: