Ich habe ein Gunicorn, das mit mod_proxy eine Kolbenanwendung hinter Apache bedient.
Gunicorn ist an http://localhost:8080/
. Angenommen, mein Server ist eingeschaltethttp://example.com/
Wenn ich einen ungültigen Link auf meinen Server poste (z. B. das Nachstellen vergessen), http://example.com/with-no-trailing-slash
wird der Benutzer beispielsweise umgeleitet, http://localhost:8080/with-no-trailing-slash
was nicht gültig ist, da sich auf dem Clientcomputer kein Server befindet.
Weißt du warum es sich so verhält? Und wie kann man dieses Verhalten beheben?
Um Gunicorn zu starten, mache ich Folgendes: sudo gunicorn -b localhost:8080 app:app
<VirtualHost *:80>
ServerName example.com
ServerAlias example.com
DocumentRoot /opt/example
<Proxy *>
AuthType basic
AuthBasicAuthoritative Off
SetEnv proxy-chain-auth On
Order allow,deny
Allow from all
</Proxy>
# Let apache serve static files
ProxyPass /robots.txt !
ProxyPass /favicon.ico !
ProxyPass /static/ !
Alias /static/ /opt/example/app/static/
# Gunicorn handle the others
ProxyPass / http://localhost:8080/
# robots.txt et favicon.ico sont dans /path/to/django/project/static/
Alias /robots.txt /path/to/django/project/static/robots.txt
Alias /favicon.ico /path/to/django/project/static/favicon.ico
Alias /favicon.ico /path/to/django/project/static/favicon.ico
<Directory /path/to/django/project>
Order deny,allow
Allow from all
Options -Indexes
</Directory>
</VirtualHost>
Wenn Sie eine andere Konfigurationsdatei benötigen, lassen Sie es mich wissen!
apache-2.4
mod-proxy
gunicorn
Alexis Benoist
quelle
quelle
ProxyPass /app/ http://localhost:8080/app/
gegenProxyPasss /app http://..../app
Antworten:
Ihnen fehlt die umgekehrte Zuordnung, die für Apache beim Umschreiben von Umleitungs-URLs genau nützlich ist. In 99% der Fälle sind die Vorwärts- und Rückwärtszuordnungen gleich.
Füge das hinzu :
Und lade Apache neu.
quelle