title: nginx 1.5+ file upload -- best practices
body: <p>I'm looking to upload files through my <code>nginx</code> server. I'm currently running <code>nginx-1.4.6</code> and am willing up move to the latest stable <code>nginx-1.5*</code> as necessary. </p>
  
  <p>The community favorite is/was Valery Kholodkov's <code>nginx-upload-module</code>, found <a href="https://github.com/vkholodkov/nginx-upload-module" rel="noreferrer">here</a>. Regrettably Valery is no longer maintaining this module, details <a href="https://github.com/vkholodkov/nginx-upload-module/issues/41" rel="noreferrer">here</a>. As of <code>nginx-1.3.9</code> the module works partially or not at all. </p>
  
  <p>I've compiled the <code>nginx-upload-module</code> into <code>nginx-1.4.6</code> and am getting a bug (Client cxn closed) that seems to be fixed in the <code>nginx-1.5.3</code> <a href="http://nginx.org/en/CHANGES" rel="noreferrer">changeset</a>. However I've applied the patch and had no luck.</p>
  
  <p>Anatoly's slightly dated post, <a href="https://coderwall.com/p/swgfvw" rel="noreferrer">here</a>, offers multiple solutions, includes four solutions</p>
  
  <ul>
  <li><a href="https://github.com/vkholodkov/nginx-upload-module" rel="noreferrer">nginx-upload-module</a></li>
  <li><a href="https://github.com/pgaertig/nginx-big-upload" rel="noreferrer">nginx-big-upload</a></li>
  <li><a href="https://github.com/agentzh/lua-resty-upload" rel="noreferrer">lua-resty-upload</a></li>
  <li><a href="http://nginx.org/en/docs/http/ngx_http_core_module.html#client_body_in_file_only" rel="noreferrer">clientbodyinfileonly</a></li>
  </ul>
  
  <p>As I dive into the second and fourth solutions (I prefer not to make <code>lua</code> a dependency, but I might) I figured that it's appropriate to ask this community:</p>
  
  <p><strong>What are the current best practices for file uploading with <code>nginx-1.5+</code>?</strong></p>
  
  <p>Let me add that I'm uploading files from a <code>python</code> <code>POST</code> command and trying to test with <code>curl</code>. <code>PHP</code> is not on my tech stack. </p>