1、问题描述:
最近用jquery的插件jplay在页面中嵌入了一个音频播放器来播放MP3文件,但在测试的过程中发现这个播放器只能播放存放在工程目录底下的音频文件,工程以外的MP3文件却无法加载进去。由于这些音频文件是不断增加的,如果把它们放到工程中去就会使项目变得非常庞大,这显然是不行的,所以这些外部的资源必须存放到工程以外指定的目录中存放,这样的话js又访问不到,那怎么办呢?经过多方查找资料终于找到了比较好的解决办法。
2、解决办法:
在tomcat服务器中做路径映射,具体方法:
在tomcat安装目录中的conf目录中找到server.xml文件,找到<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"></Host>
在其中加入
<Context path="/mp3" docBase="E:\mp3" debug="0" reloadbale="true"/>
其中:path:表示访问的虚拟路劲
docBose:代表外部资源存在的实际路径
后面两个属性默认这样写
ok,搞定了,之前我们放在工程下的话访问方式:
<script>
load("./mp3/t.mp3");
</script>
加入路径映射以后访问方式:
<script>
load("http://localhost:8080/mp3/t.mp3");
</script>
这样的话我们可以把外部资源文件放到任何地方,只要做相应的路径映射就可以了。