Wie zum ausführen von IPython hinter einem Apache-proxy

Ich würde gerne eine IPython-notebook-web-server hinter einem Apache reverse) proxy, so dass anstelle der URL

https://my.server:XXXX

(wobei XXXX für einige port-Nummer), die ich verwenden könnte

https://my.server/py0

Ich bin mir bewusst, dass IPython verwendet websockets und ich vermute, das ist der Teil, der fehlt in meinem setup, aber ich konnte einfach nicht finden, eine angemessen detaillierte Beschreibung, wie Sie diese. Leider ist die IPython webserver setup docs nicht viel zu sagen über proxies abgesehen davon:

Wenn hinter einem proxy, vor allem, wenn Sie Ihr system oder browser ist so eingestellt,
die automatische Erkennung der proxy, der notebook-web-Anwendung möglicherweise nicht
die Verbindung zum server, die websockets[...]

Also habe ich beschlossen, zu versuchen es auf meine eigene, und legen Sie die folgenden in /etc/apache2/sites-enabled/default-ssl.conf :

            SSLProxyEngine On
            SSLProxyVerify none
            SSLProxyCheckPeerCN off
            SSLProxyCheckPeerName off
            ProxyPass       /py0/https://localhost:10000/
            ProxyPassReverse        /py0/https://localhost:10000/

Zugriff auf IPython "direkt" über die URL https://my.server:10000 perfekt funktioniert wie beworben.

URL https://my.server/py0 (ohne abschließenden slash) gibt "404 Nicht gefunden".

Gleich mit einem nachgestellten Schrägstrich https://my.server/py0/ bedeutet "Arbeit", dass es nach vorne zu https://my.server/login?next=%2F, die dann "Nicht gefunden" in seinem eigenen Recht-offensichtlich, weil der /py0/Teil verloren gegangen. Vielleicht sollte ich sagen, IPython aber wie ??

Vielleicht relevanten zahlen version: Ubuntu 14.04 LTS, Apache 2.4.7.

Vielleicht relevante Frage ALSO: IPython hinter nginx. Jedoch, da alles andere in meinem setup erfolgt durch Apache zu meiner vollen Zufriedenheit, ich nicht wollen, zu laufen Nginx zusätzlich.

Gibt es eine gute Seele gibt, die erfolgreich konfiguriert IPython-notebook-web-Server hinter dem Apache? Wenn ja, dann bitte Schritt vorwärts, und teilen Sie Ihr wissen 🙂 Vielen Dank!

Ich möchte allen danken, die dazu beigetragen Antworten. JupyterHub (github.com/jupyter/jupyterhub) bietet ab sofort eine elegantere Lösung. Ähnlich zur RStudio (rstudio.com), können Sie ausführen ein webserver in denen mehrere Benutzer können sich anmelden und parallel arbeiten. Wenn Interesse besteht, kann ich meine JupyterHub Installations-Hinweise für Ubuntu 14.04.

InformationsquelleAutor Laryx Decidua | 2014-05-27

Schreibe einen Kommentar