title: Using lets encrypt without control over the root directory
body: <p>I'm running a Django website and using lets encrypt for my SSL.  Configuration of the framework is such that I can't allow access on: <a href="http://url.com/.xxxx" rel="nofollow noreferrer">http://url.com/.xxxx</a></p>
  <p>What I can allow free access to is:
  <a href="http://url.com/static/.xxxx" rel="nofollow noreferrer">http://url.com/static/.xxxx</a></p>
  <p>My /static/ URL can accept and host any random files lets encrypt needs.  Is there a way to have certbot support /static/ instead of just using / for the URL?</p>
  <p>Thanks</p>
  <h1>EDIT</h1>
  <p>I've found a work around that is acceptable for me.  Further digging, I found that /.well-known/ is always the base directory for SSL checking.  That means we can add a static directory which will work nicely with certbot.  Here's how, firstly add this into your apache config:</p>
  <pre><code>Alias /.well-known/ /var/www/XXXXX/website/static/.well-known/
  &lt;Directory /var/www/XXXXX/website/static/.well-known/&gt;
  Require all granted
  &lt;/Directory&gt;
  </code></pre>
  <p>Then add this into your settings.py file:</p>
  <pre><code>STATIC_ENCRYPT_URL = '/.well-known/'
  STATIC_ENCRYPT_ROOT = '/var/www/XXXXX/website/static/'
  </code></pre>
  <p>Add this into your urls.py:</p>
  <pre><code>urlpatterns = [
    ... 
  ] + static(settings.STATIC_ENCRYPT_URL, document_root=settings.STATIC_ENCRYPT_ROOT)
  </code></pre>
  <p>Reset your webserver.  Now you have a special url /.well-known/ which will host any file certbot requires.</p>
  <p>I'd still like a better answer than this.</p>