我使用HAProxy进行负载平衡和ssl终止。在它背后我有几个Grails应用程序,其中一个是半技术用户的CMS。
当用户链接到CMS中的Javascript库时,如下所示:
<link href="/js/fancybox/jquery.fancybox-1.3.4.css" rel="stylesheet" type="text/css" />
他们被Grails重定向到哈希版本:
http://test.com/static/qnzsUX0FP3vbKVmIdNgR3SKbHRAuosgVLRMgegqUyzc.js
问题是浏览器看到重定向到不安全页面,并且实际上并没有加载javascript。
如何让用户访问/ web-app / js下的资源而不将其重定向到散列版本?
1)告诉Grails它不应该通过url中的某种参数重定向到散列静态版本(?hash = no),它应该只提供Javascript文件。
2)或者请求应该重定向到https或http版本,具体取决于访问它的协议。
我使用的Grails版本是2.3.7,资源是1.2.7。
我确实喜欢散列提供的好处,并且它可以在我可以使用资源插件的任何地方工作,但是想在这些特定实例中跳过它。
更新到Grails 2.4.2并使用资产管道插件可能会解决这个问题,但是现在花费的时间也比我想花费更多时间来调试Javascript。