我正在尝试将我的应用程序移植到Spring引导程序,但事情对我来说很好。我面临着静态内容和contextPath的问题。我在application.properties
server.contextPath=/sm-admin
在此之前,我指的是我的静态内容
<script src="/plugins/jQuery/jquery-2.2.3.min.js"></script>
<script src="/bootstrap/js/bootstrap.min.js"></script>
但添加contextPath
后,上述配置不再有效,我有以下方式
将静态内容引用更改为
<script src="../plugins/jQuery/jquery-2.2.3.min.js"></script>
<script src="../bootstrap/js/bootstrap.min.js"></script>
或者
我相信应该有一些方法来处理它使用application.properties文件,但我无法找到这样的配置。有些人可以指出我正确的方向。
答案 0 :(得分:2)
这个问题有两个因素:你的网络应用程序和浏览器,所以我不认为这可以通过Spring控制,因为这与浏览器的行为有关。
<强>问题强>
在您的“旧”html文件版本中,您的应用根上下文为/
。这就是src='/plugins/jQuery/jquery-2.2.3.min.js'
加载没有任何问题的原因。
现在,由于您的应用根权限已更改为/sm-admin
,因此您的网络应用仅会提供前缀为该路径的请求。这就是src='/plugins/jQuery/jquery-2.2.3.min.js'
不起作用的原因,如果src='/sm-admin/plugins/jQuery/jquery-2.2.3.min.js'
现在src='../plugins/jQuery/jquery-2.2.3.min.js'
正在工作b / c您的网页必须是从根上下文下面的1个文件夹提供的,即:/sm-admin/page/mypage.html
和..
您只是间接引用根路径
我建议的解决方案:
/sm-admin
前缀从根加载的所有资源。或强>
src='/plugins/jQuery/jquery-2.2.3.min.js'
更改为src='plugins/jQuery/jquery-2.2.3.min.js'
,并在标题中为所有亲戚路径设置基本网址,即:<base href="/sm-admin/"/>
。此解决方案的一个警告是,您的应用程序中的任何位置都使用相对路径,它们将相对于此基本路径。答案 1 :(得分:0)
在您的index.html中,将$cfg['Servers'][$i]['host'] = 'localhost:3306';
更改为 <allow-intent href="http://*/*" launch-external="yes"/> <allow-intent href="https://*/*" launch-external="yes"/>
。
这解决了我的问题。