我的前端是在Vue.js上制作的,并且正在生产中运行nginx。我的nginx.conf看起来像:
server {
listen 80;
server_name localhost;
root /usr/share/nginx/html;
index index.html index.htm;
client_max_body_size 100M;
# added for VueRouter
location / {
try_files $uri $uri/ /index.html;
}
}
在Node.js应用程序中,我使用multer来接受文件:
// 100 MB
const upload = multer({ storage, limits: { fileSize: 100 * 1024 * 1024 } })
const router = express.Router()
router.post('/create', upload.single('file'), ImageController.create)
同样在app.js中我将bodyParser设置为100 MB:
const app = express()
// Middleware
app.use(bodyParser.urlencoded({ limit: '100mb', extended: true, parameterLimit: 100000 }))
app.use(bodyParser.json({ limit: '100mb' }))
但我仍然得到错误
413请求实体太大
我错过了什么吗?
我设法修复它,问题没有像我预期的那样。在我的VPS中,我创建了docker network nginx-proxy
,以将不同的端口链接到不同的域名。我不得不将client_max_body_size 100M;
添加到该容器的nginx.conf中!