问题
Periodically I get an error:
This site can't be reached.
The webpage at https://example.com/document might be temporarily down or it my have moved permanently to are new web address.
My site is stored on AWS. I use rails + nginx + passenger.
Nginx error log:
client intended to send too large body: 3729822 bytes,
client: 172.42.35.54, server: example.com,
request: "POST /document HTTP/1.1", host: "test.example.com",
referrer: "https://test.example.com/document/new"
app log:
ActionController::RoutingError (No route matches [GET] "/document")
After a while, the error disappears. I have doubts that this is due to deployment, but I'm not sure. Could you please tell me, with what it can be related and how to fix such a problem?
回答1:
Default Nginx config limits client request body with 1Mb.
You have to increase client_max_body_size
to allow users to post large documents.
Don't miss with the context (http, server, location) of this derictive and don't forget to reload configuration or restart Nginx after that.
回答2:
For me path of nginx.conf
was /etc/nginx/nginx.conf
.
In my case I just added client_max_body_size
in http block
and it worked for me
http {
...
client_max_body_size 20M;
}
Make sure to restart nginx after changing this config
来源:https://stackoverflow.com/questions/44741514/nginx-error-client-intended-to-send-too-large-body