我在Play!前面使用Apache Proxy。 为了重用我的SSL证书, apache配置是这样的:
<Location /balancer-manager>
SetHandler balancer-manager
Order Deny,Allow
Deny from all
</Location>
<Proxy balancer://mycluster>
BalancerMember http://localhost:9997
BalancerMember http://localhost:9998 status=+H
</Proxy>
<Proxy *>
Order Allow,Deny
Allow From All
</Proxy>
ProxyPreserveHost On
ProxyPass /balancer-manager !
ProxyPass /play/ balancer://mycluster/
ProxyPassReverse /play http://localhost:9997/
ProxyPassReverse /play http://localhost:9998/
一开始似乎没问题,但我发现资产路径并不像预期的那样。
正确的道路应该是这样http://domain/play/jquery.js
,但玩!像这样返回http://domain/jquery.js
,
因此,当用户获取资源时,Apache无法解析url,
有什么建议吗?
谢谢!
答案 0 :(得分:0)
Play对你的Apache配置一无所知 - 它仍然认为它仍然在域的根文件夹中运行。您可以使用的最干净的方法是(恕我直言)使用子域http://play.domain.tld
而不是嵌套文件夹http://domain.tld/play
,否则您需要反映路线中网址的play
段。