title: WordPress async-upload.php 403 error
body: <p>For a client of mine, I have moved their webpage to a <strong>VPS</strong> by request. But I'm a web developer and not good at server configuration.</p>
  
  <p>Due to a permission misconfiguration, in my opinion, I cannot fetch images in <strong>Media library</strong>, no error or sth. Also when I try to upload a new one, it completes the <strong>Uploading</strong> process, but gets stuck in <strong>Processing</strong> process and gives a 403 error on async-upload.php.</p>
  
  <p>I have tried <strong>755</strong> and <strong>777</strong> permissions on both <strong>wp-content</strong> and <strong>wp-content/uploads</strong>, doesn't solve the issue.</p>
  
  <p>Any help would be appreciated.</p>
  
  <p><strong>Edit:</strong> Logs added.</p>
  
  <p>These are from requests.log</p>
  
  <pre><code>*.252.164.35 - - [20/Nov/2015:18:14:48 -0500] "GET /xml_feed/********.php HTTP/1.1" 200 1861
  *.252.164.35 - - [20/Nov/2015:18:14:51 -0500] "GET /xml_feed/*****.php HTTP/1.1" 200 394
  *.252.164.35 - - [20/Nov/2015:18:14:52 -0500] "GET /xml_feed/***.php HTTP/1.1" 200 359
  *.253.241.91 - - [20/Nov/2015:18:14:50 -0500] "POST /wp-admin/async-upload.php HTTP/1.1" 200 11
  *.253.241.91 - - [20/Nov/2015:18:14:53 -0500] "POST /wp-admin/async-upload.php HTTP/1.1" 403 3214
  </code></pre>
  
  <p><strong>Edit 2:</strong> Gave all folders <strong>777</strong> permission, now I can re-install my WP setup and update my plugins from panel, but Media Library problem still exists, async-upload.php still gives <strong>403</strong> error.</p>