Phusion Passenger: Unterschied zwischen den Versionen

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen
K (Tippfehler)
K (noch mehr Typos)
Zeile 5: Zeile 5:


Sobald im Verzeichnis app bzw. app-ssl unter der aufgeschalteten Domain eine App existiert,
Sobald im Verzeichnis app bzw. app-ssl unter der aufgeschalteten Domain eine App existiert,
wird dies von Phusion Passenger ausgefürt
wird dies von Phusion Passenger ausgeführt


Phusion Passenger ist immer für die gesamte aufgeschaltete Domain aktiviert,
Phusion Passenger ist immer für die gesamte aufgeschaltete Domain aktiviert,
die Bereitstellung einer App wirkt also auch auf Subdomains im Verzerichnis 'subs'.
die Bereitstellung einer App wirkt also auch auf Subdomains im Verzeichnis 'subs'.
Insbesondere wird damit PHP für die jeweilige Domain deaktiviert.
Insbesondere wird damit PHP für die jeweilige Domain deaktiviert.
Statischen Dateien (z.B. index.html) aus htdocs* und subs* sind davon nicht betroffen.
Statischen Dateien (z.B. index.html) aus htdocs* und subs* sind davon nicht betroffen.
Idealerweise wird daher für jede App eine eigene Subdomain mit HSAdmin aufgeschaltet.
Idealerweise wird daher für jede App eine eigene Subdomain mit HSAdmin aufgeschaltet.


Sobald eine App einmal geladen ist, sind die Settings und Mappings Bestandteil der transienten Apache vhost-Konfiguration.  
Sobald eine App einmal geladen ist, sind die Settings und Mappings Bestandteil der transienten Apache vhost-Konfiguration. Änderungen an .htaccess-Settings bzgl. Passenger kommen dann nicht mehr direkt zum Tragen,  
Änderungen an .htaccess-Settings bzgl. Passenger kommen dann nicht mehr direkt zum Tragen,  
weil die .htaccess zu Gunsten der Effizienz dann nicht mehr ausgewertet wird.
weil die .htaccess zu Gunsten der Effizienz dann nicht mehr ausgewertet wird.


Zum deaktivieren einer App muss diese im app und app-ssl Verzeichnis gelöscht werden.
Zum Deaktivieren einer App muss diese im app und app-ssl Verzeichnis gelöscht werden.


== Konfiguriation /  .htaccess ==
== Konfiguriation /  .htaccess ==

Version vom 29. März 2019, 18:03 Uhr

Phusion Passenger ist ein Apache-Plugin zur Integration von Apps auf Domain (vhost) Ebene. Dabei kann es sich z.B. um NodeJS, RubyOnRails, Django oder weitere Laufzeitumgebungen handeln.

Aktivierung / Deaktivierung

Sobald im Verzeichnis app bzw. app-ssl unter der aufgeschalteten Domain eine App existiert, wird dies von Phusion Passenger ausgeführt

Phusion Passenger ist immer für die gesamte aufgeschaltete Domain aktiviert, die Bereitstellung einer App wirkt also auch auf Subdomains im Verzeichnis 'subs'. Insbesondere wird damit PHP für die jeweilige Domain deaktiviert. Statischen Dateien (z.B. index.html) aus htdocs* und subs* sind davon nicht betroffen. Idealerweise wird daher für jede App eine eigene Subdomain mit HSAdmin aufgeschaltet.

Sobald eine App einmal geladen ist, sind die Settings und Mappings Bestandteil der transienten Apache vhost-Konfiguration. Änderungen an .htaccess-Settings bzgl. Passenger kommen dann nicht mehr direkt zum Tragen, weil die .htaccess zu Gunsten der Effizienz dann nicht mehr ausgewertet wird.

Zum Deaktivieren einer App muss diese im app und app-ssl Verzeichnis gelöscht werden.

Konfiguriation / .htaccess

Das Plugin ist zwar unabhängig von Einträgen in der .htaccess aktiv, kann aber über die .htaccess Datei im jeweiligen Domain-Verzeichnis konfiguriert werden, z.B. in "/home/pacs/xyz00/users/example/doms/example.com/.htaccess":

   PassengerNodejs /home/pacs/xyz00/users/example/.nvm/versions/node/v6.11.2/bin/node

(Nähere Informationen bitte den jeweiligen Wiki-Seiten über die spezifischen Laufzeitumgebungen entnehmen.)

Neueinlesen der Konfiguration / Restart der App

Passenger Apps werden wir folgt neu gestartet oder neu geladen:

   mkdir app(-ssl)/tmp
   touch app(-ssl)/tmp/restart.txt

Das führt nach einer Weile zu einem graceful Restart der App. D.h. die einzelnen Prozesse werden sukzessive zwischen der Bedienung von HTTP-Requests neu gestartet. Im Rahmen dieses Restarts sollten geänderte .htaccess Direktiven Wirkung entfalten. Entsprechendes gilt für Änderungen an der Applikation selbst.