Vue.js / Nginx / Node.js - 413 Слишком большой объект запроса - PullRequest
2 голосов
/ 11 апреля 2019

Мой веб-интерфейс создан на 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 МБ:

const app = express()

// Middleware
app.use(bodyParser.urlencoded({ limit: '100mb', extended: true, parameterLimit: 100000 }))
app.use(bodyParser.json({ limit: '100mb' }))

Но я все еще получаю ошибку

413 Запрос слишком большой.

Я что-то упустил?

1 Ответ

0 голосов
/ 12 апреля 2019

Мне удалось это исправить, и проблема оказалась не такой, как я ожидал. В моем VPS я создаю сеть Docker nginx-proxy для связи разных портов с разными доменными именами. Мне также пришлось добавить client_max_body_size 100M; в nginx.conf этого контейнера!

...