java - Wildfly 不断重定向本地主机 :8080/app to localhost:8080/app/ending in 403 error

标签 java servlets jboss wildfly undertow

我遇到了一种非常奇怪的情况,我被重定向到以/结尾的应用程序 URL。这会导致 403 错误禁止。

我已经禁用了我使用的 apache 反向代理。我已经禁用了所有配置的 Spring Security 内容,所以我想说这一切都被丢弃了。 我调试 io.undertow.servlet.handlers handleRequest,它是 Wildfly 中 servlet 的入口点,我正在进入该方法:

public void handleRequest(final HttpServerExchange exchange) throws Exception {

一个

HttpServerExchange{ GET /app/

因此这意味着到/app/的重定向发生在调用任何 servlet 之前。

在 Firefox 开发者控制台中,我看到发出了 2 个请求,一个请求针对“app”,另一请求紧接着请求请求“/app/”,这是进入调试的请求。 在第一个请求(针对“app”)的响应 header 中,我得到:

Connection keep-alive Content-Length 0 Date Thu, 15 Nov 2018 11:23:06 GMT Location http://localhost:8080/app/ Server
WildFly/10 X-Powered-By Undertow/1

我知道 Wildfly/undertow 中的某些内容正在将我的初始请求重定向到/app/,但它会是什么?

有趣的是,在 Wildfly 处理第二个请求之前,我无法看到第一个请求的响应 header 。

非常感谢任何帮助。

最佳答案

看来这是 undertow 的一项功能...有人要求添加一个额外的/如果请求的内容根目录没有/并且它包含在版本 1.0.0.Beta5 中。

https://issues.jboss.org/browse/UNDERTOW-89

编辑:

第一个谜题解决了,添加了额外的“/”。 但为什么 403 是“禁止”呢?好吧,似乎有人忘记添加定义为欢迎页面的index.html。添加index.html后,一切按预期工作...

希望这可以帮助其他遇到同样问题的人。

关于java - Wildfly 不断重定向本地主机 :8080/app to localhost:8080/app/ending in 403 error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53318558/

相关文章:

eclipse - 红帽 jboss 开发者工作室未打开

java - jfreechart 以及网页中的其他数据

java - hibernate ,合并时遇到问题

ssl - Jboss 应用程序策略在具有 PBESecurityDomain 的相互/客户端证书身份验证中被忽略

java - 在一个 UiBinder 文件中声明 2 个独立组件?

java - 获取从 hdfs 到 servlet 的文件/目录列表

sql-server - 在 JBoss 上设置 XA 连接的集成安全性

java - 从文件读取到数组时未找到行错误

在 AWS CDK 代码中引用 Lambda 代码时出现 java.lang.ClassNotFoundException

java - 为什么我每次尝试运行 android studio 应用程序时都会遇到相同的错误?