2015-12-04 7 views
3

Я пытаюсь увеличить максимальную длину содержимого, чтобы на сервер можно было загружать большие файлы.Увеличьте максимальную длину содержимого в аэрозольной баллончике

Я добавил это application.conf

spray.can { 
    server { 
    parsing { 
     max-content-length = 2g 
     max-chunk-size = 10m 
    } 
    } 
} 

Однако крышка, кажется, все еще на 1 МБ. Я могу подтвердить, что параметры считываются, так как я могу опустить колпачок, и он вступит в силу.

Приложение вызывает ошибку отклика (413 Request Entity Too Large), у меня есть HTTPService (прием CORS) и маршрут, глядя, как это:

val contentRoute = 
    cors { 
    pathPrefix(PROJECTS) { 
     (post & path(Segment/CONTENT)) { (projectId) => 
     post { 
      entity(as[MultipartFormData]) { data => 
      complete(StatusCodes.OK) 
      } 
     } 
     } 
    } 
    } 

Может ли быть какой-то другой предпочтение, что мне нужно настроить, что также установлен на 1 МБ по умолчанию?

Обновление:

Эти версии зависимостей:

libraryDependencies ++= { 
    val akkaV = "2.3.9" 
    val sprayV = "1.3.3" 
    Seq(
    "io.spray"   %% "spray-can"  % sprayV, 
    "io.spray"   %% "spray-routing" % sprayV, 
    "io.spray"   %% "spray-json" % "1.3.2", 
    "io.spray"   %% "spray-testkit" % sprayV % "test", 
    "com.typesafe.akka" %% "akka-actor" % akkaV, 
    "com.typesafe.akka" %% "akka-testkit" % akkaV % "test", 
    "org.specs2"   %% "specs2-core" % "2.3.11" % "test", 
    "org.mongodb"   %% "casbah"  % "2.8.2" 
) 
} 
+0

Возможный дубликат http://stackoverflow.com/questions/30025952/override-spray-can-property –

+0

Он хочет, чтобы изменить свойства на начало приложения, я не требую этого, я использую только обычный application.conf. Поэтому это не дубликат. – spydon

+0

По-видимому, его приложение application.conf тоже работает, что делает его еще менее дублирующимся. – spydon

ответ

2

Моя плохая конфигурация правильно и работает. Надеюсь, что другие люди с такой же проблемой, как это, будут спотыкаться над этим сообщением.

Проблема была не спрей-бланк, а прокси-сервер nginx перед ним. Очевидно, что также необходимо изменить предел max-content-length в nginx.

Что сделано, помещая следующее в /etc/nginx/nginx.conf:

http { 
    server { 
     ... 
     client_max_body_size 100M; 
     ... 
    } 
} 
Смежные вопросы