Ich bin mit einer Django-Website und Verwendung von können für meine SSL verschlüsseln. Die Konfiguration des Rahmens ist so, dass ich keinen Zugriff erlauben kann, auf: http://url.com/.xxxxVerwenden Sie können verschlüsseln ohne Kontrolle über das Stammverzeichnis
Was ich freien Zugang ermöglichen kann, ist: http://url.com/static/.xxxx
Meine/static/URL akzeptieren kann und Host keine zufälligen Dateien kann verschlüsseln Bedürfnisse . Gibt es eine Möglichkeit, certbot support/static/anstatt nur/für die URL zu verwenden?
Dank
EDIT
Ich habe eine Arbeit um, dass akzeptabel ist für mich gefunden. Beim weiteren Graben habe ich festgestellt, dass /.well-known/ immer das Basisverzeichnis für die SSL-Prüfung ist. Das bedeutet, dass wir ein statisches Verzeichnis hinzufügen können, das gut mit certbot funktioniert. Hier ist, wie zunächst fügen Sie diese in Ihre Apache-Konfiguration:
Alias /.well-known/ /var/www/XXXXX/website/static/.well-known/
<Directory /var/www/XXXXX/website/static/.well-known/>
Require all granted
</Directory>
Dann fügen Sie diese in Ihre Datei settings.py:
STATIC_ENCRYPT_URL = '/.well-known/'
STATIC_ENCRYPT_ROOT = '/var/www/XXXXX/website/static/'
Fügen Sie diese in Ihrem urls.py:
urlpatterns = [
...
] + static(settings.STATIC_ENCRYPT_URL, document_root=settings.STATIC_ENCRYPT_ROOT)
Setzen Sie Ihren Webserver zurück. Jetzt haben Sie eine spezielle URL /.well-known/, die jede Datei hostet, die certbot benötigt.
Ich möchte immer noch eine bessere Antwort als diese.
Deaktivieren Sie vorübergehend Django und führen Sie einen einfachen TCP-Dateiserver aus. – hjpotter92
Das funktioniert auf Dev, aber ich kann den Produktionsserver nicht offline so nehmen. –
Es dauert weniger als 2 Minuten für den gesamten LetsEncrypt-Prozess. Sie können auch den kostenlosen Plan von CloudFlare für ssl verwenden. – hjpotter92