我有一个安全的(https:443)应用程序在Amazon Web服务上运行(AWS
)有TOmcat7和Apache http服务器。该URL看起来像https://ama.its.com/service。这非常有效。
对于在development AWS instances
等非标准ssl端口上运行我们的应用程序的"23456"
,它们是经济高效的替代方案的新要求。因此,网址现在变为https://ama.its.com:23456/service。我的代码中有一个Servlet实现。当我执行"request.getRequestURL().toString();"
时,它会返回没有端口#https://ama.its.com/service
的网址。这导致我的应用程序出现问题。我希望URL包含端口#。
我在谷歌上搜索了一下this post。邮件告诉Apache服务器正在屏蔽PORT并使用out port重建URL。该帖子提出了解决从Request标头获取URL的问题,但我现在不想走这条路线,直到我发现它们是否是一个修复它。我还查看了Apache http日志,如果有什么好笑的话。我找不到任何可疑的东西。
他们是否可以告诉服务器不要在URL中排除端口#?
答案 0 :(得分:0)
当使用非标准ssl端口443时,Apache HTTP服务器会出现问题。当发送URL时,端口会在请求对象中被删除。或者从请求标头获取URL是一个不错的选择。
该选项不符合我的需求,因为我有一个网站给用户但是在网站的Iframe中显示的内容实际上是在不同的tomcat(这是AWS服务器)上加载数据。所以基本上,请求标题给出了主URL的URL,而不是在iframe内运行的网站的URL。
我有一个适合我的项目的解决方法,需要在IFrame中存储网站的URL以从属性文件中获取并使用它。