javascript - Vue.js/Nginx/Node.js - 413 请求实体太大

标签 javascript node.js express file-upload multer

我的前端是在 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 Request Entity Too Large

我错过了什么吗?

最佳答案

我设法修复了它,但问题并不如我所料。在我的 VPS 中,我创建了 docker network nginx-proxy 来将不同的端口链接到不同的域名。我还必须将 client_max_body_size 100M; 添加到该容器的 nginx.conf 中!

关于javascript - Vue.js/Nginx/Node.js - 413 请求实体太大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55632292/

相关文章:

javascript - Mean Stack - 使用 "Globals"模块会在运行 Web 应用程序时导致问题吗?

node.js - 如何将 body-parser 与 LoopBack 一起使用?

javascript - Router.use() 需要一个中间件函数,但得到了一个未定义的

javascript - D3 v4 带矩形的力定向图

javascript - 单击 AmCharts 的自定义标记时触发 Javascript 函数

javascript - NodeJS : Why util. isFunction 不存在?

node.js - Express 未知错误处理程序正在记录自定义错误

javascript - 使用 next 选择特定 html 标签的多个子标签

javascript - React Flux Uncaught TypeError : _LocalityStore2. default.setSelectedLocality 不是函数

javascript - 如何使 Electron 在所有其他 Windows 之上的窗口中作为 Skype 的指示器