我的文件存储在 Fat jar 服务器旁边的
uploads
文件夹下,并且文件已正确保存在那里,但在通过云服务器 http://{IP_ADDRESS}:8085/uploads/image1.png
访问这些文件时,我收到 404。
这在我的本地主机上运行得很好。
//目录结构
root@localhost:~/ktor# ls
build my-server.jar uploads
//后端代码
fun Application.configureRouting() {
routing {
staticRoutes()
}
}
fun Route.staticRoutes() {
val projectRoot = File(System.getProperty("user.dir"))
staticFiles("/uploads/", File("${projectRoot}\\uploads"))
}
不确定我错过了什么,有什么线索吗?
问题出在反斜杠路径分隔符 (
"${projectRoot}\\uploads"
)。以下代码按预期工作:
fun Route.staticRoutes() {
val projectRoot = File(System.getProperty("user.dir"))
staticFiles("/uploads", projectRoot.resolve("uploads"))
}