You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Scala Play Framework后端EC2部署后/uploadImage接口返回404但本地运行正常的问题求助

Scala Play Framework后端EC2部署后/uploadImage接口返回404但本地运行正常的问题求助

大家好,我最近在开发一个基于Scala + Play Framework的Web应用后端,核心功能是处理图片上传:把图片传到AWS S3,同时把图片元数据存储到AWS RDS实例里。

本地运行的时候一切正常,但部署到EC2实例后,第一个端点GET /能正常访问,可是第二个处理图片上传的POST /uploadImage接口却返回404 Not Found,实在搞不懂哪里出问题了,想请教下大家。

先给大家说下项目的基本情况:

  • 我用dist命令打包应用部署到EC2
  • 当前有两个端点:
    GET     /                           controllers.HomeController.index()
    + nocsrf
    
    POST    /uploadImage                controllers.StoreImageController.uploadImage()
    

下面是我的关键配置文件application.conf内容:

play.http.secret.key="**************"

play.filters.hosts {
  allowed = ["."]
}

db {
  driver = "org.postgresql.Driver"
  host = "jdbc:postgresql://xxxxx:5432/hellodb"
  username = "postgres"
  password = "xxxxxx"
}

play.http.parser.maxDiskBuffer = 100MB
parsers.anyContent.maxLength = 100MB

还有处理上传的StoreImageController代码:

@Singleton
class StoreImageController @Inject() (
  controllerComponents: ControllerComponents,
  imageDao: ImageDao
) extends AbstractController(controllerComponents) {

  val BUCKETNAME = "lovilovasz-images"

  def uploadImage() = Action(parse.multipartFormData) { request =>
    request.body
      .file("picture")
      .map { picture =>
        val filename = picture.filename
        val fileSize = picture.fileSize.toFloat
        val contentType = picture.contentType.getOrElse("Unknown")
        val imageMetadata = ImageMetadata(
          UUID.randomUUID(),
          filename,
          fileSize,
          contentType,
          DateTime.now().toString
        )

        imageDao.insertImageMetadata(imageMetadata)
        uploadToS3(picture)
        Ok("File uploaded")
      }
      .getOrElse {
        BadRequest("File can't be uploaded.")
      }
  }
}

实际与预期行为

  • EC2上实际行为:GET /正常访问,POST /uploadImage返回404
  • 预期行为:两个端点都能正常工作

想问问大家,为什么本地运行没问题,部署到EC2就出现这个404的情况呢?麻烦帮忙分析下可能的原因,谢谢!

备注:内容来源于stack exchange,提问作者Lovasz Kristof

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 15:04:48