我有一个构建在Beanstalk(Amazon Linux 2)上的Sping Boot 应用程序,我需要增加client_max_body_size,因为我发布的一些表单数据包含图像,并且我收到413: Request Too Large
Nginx错误。
我按照AWS的文档了解了如何更改此属性。
我的项目结构现在如下所示:
而文件的内容是:
client_max_body_size 50M;
部署后,我不断得到相同的错误(与图像〉1MB的总数)。
未在conf.d中创建文件:
这是因为我的buildSpec
如何打包我的应用程序吗?
version: 0.2
phases:
install:
runtime-versions:
java: corretto17
pre_build:
commands:
- echo Nothing to do in the pre_build phase...
build:
commands:
- echo Build started on `date`
- mvn package -Dmaven.test.skip
post_build:
commands:
- echo Build completed on `date`
artifacts:
files:
- .platform/nginx/conf.d/proxy.conf
- target/myApp-0.0.1-SNAPSHOT.jar
- appspec.yml
discard-paths: yes
我还尝试将配置文件添加到我的buildspec.yml
的artifacts.files
部分。
我还尝试从buildspec上的files
部分创建文件及其内容。
我觉得我什么都试过了,有什么我可能错过了吗?
目前,我的解决方案是:
我手动编辑了文件
cd /etc/nginx/
sudo nano nginx.conf
这样就可以了,但是我想避免这种手动配置,所以它是从应用程序源代码中配置的,这是一个很好的实践。
1条答案
按热度按时间neekobn81#
问题出在我的构建规范上。
我把所有的文件放在包的根路径上,我需要这个,所以我把jar放在根路径上,但是它也把
proxy.conf
放在根路径上。将该属性设置为no(或删除它)可以使其正常工作,但我需要一种方法将jar从/target/更改为根目录,因此我使用一个构建后命令来完成此操作: