我在AWS Classic负载均衡器后面运行了AWS EC2 Jira实例。该网站在浏览器中加载正常,但由于某种原因,所有API请求都返回404。它不是Jira 404,而是一个没有正文和最小标题的通用404响应。只有响应有用的标题似乎是Server: nginx
。
尝试白名单列出我的客户端IP,打开所有端口,向LB发送请求并直接向具有适当安全组设置等的实例发送请求,但返回相同的404响应。我正在使用Postman来测试API。我注意到当我直接在浏览器中加载EC2实例时,它会重定向到负载均衡器。
使用HTML返回200。基本的auth也可以。
GET http://jira (home page)
返回404:
GET http://jira/rest/api/2/issue/ticket-num (or any other /rest/ endpoints)
我应该从哪里开始调试这个404问题?我觉得我错过了一些基本的东西。我没有看到任何用于设置其余API的Jira配置。我觉得这可能是服务器配置问题,虽然我在安装Jira时从未遇到手动Web服务器配置,所以可能在AWS方面?
编辑:仍然等待获得ssh访问实例,所以我会更新,因为我得到更多的信息和访问权限。
具有非常有限的标头集的HTTP 404响应可以来自ELB中的默认(最下面的)规则。我遇到类似的问题获取HTTP 404,因为我设置了host header
而不是path
,并在ELB规则之一中提供了主机域名。因此规则不起作用,并且默认规则返回404,因为实例上不存在此类路径。
我建议尝试使用Redirect to
或Return fixed response
选项作为默认规则来检查它是否符合默认规则。