Lorsque je visite Django / admin via une URL réécrite, je suis redirigé vers 127.0.0.1 plutôt que vers l’URL correcte

Je n’ai pas beaucoup utilisé Apache avec Django, en utilisant normalement nginx, gunicorn et un socket unix.

En essayant Apache, mod_proxy et Django, j’ai essayé de transmettre toutes les requêtes à un backend gunicorn, en écoutant 127.0.0.1:8998.

J’y suis parvenu en utilisant un Rewrite … [P] (voir ci-dessous), cependant, cela fonctionne très bien pour l’URL par défaut, lorsque je vais sur http://foo.bar.com/admin, je suis redirigé vers 127.0. 0.1 / admin, qui ne fonctionne clairement pas à distance. Est-ce une configuration possible à réaliser via un fichier htaccess, et que dois-je faire / regarder pour y remédier?

.htaccess:

RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule (.*) http://localhost:8998/$1 [P] 

Merci!

Est-ce que cela fonctionne avec http: // localhost et http: // localhost / ?

essaye ça:

 RewriteRule ^/(.*) http://localhost:8998/$1 [P] 

J’ai récemment fait des recherches sur ce que vous essayez de réaliser et vous vous êtes retrouvé avec ceci:

 ProxyRequests Off  Order deny,allow Allow from all  ProxyPass /static/ http://example.com:8080/static/ ProxyPassReverse /static/ http://example.com:8080/static/ 

Je passe toutes les demandes de chemin statique à nginx dans ce cas, mais cela peut fonctionner avec gunicorn pour vous.

Bien sûr, vous devez activer le proxy de module apache2.